diff --git a/applicationFeed-lastUpdated.json b/applicationFeed-lastUpdated.json
index 207223a81..200fbeb54 100755
--- a/applicationFeed-lastUpdated.json
+++ b/applicationFeed-lastUpdated.json
@@ -1,3 +1,3 @@
{
- "last_updated_timestamp": 1725296086
+ "last_updated_timestamp": 1725300423
}
\ No newline at end of file
diff --git a/applicationFeed-raw.json b/applicationFeed-raw.json
index 45610e1f0..6061567c4 100644
--- a/applicationFeed-raw.json
+++ b/applicationFeed-raw.json
@@ -1606,6 +1606,174 @@
"LastUpdate": 1721083541,
"FirstSeen": 1724882823
},
+ {
+ "Name": "wh-borgmatic",
+ "Overview": "Simple, configuration-driven backup software for servers and workstations.",
+ "Requires": "
Borgmatic requires:\r
- One or more paths mounted for backing up.",
+ "Repository": "ghcr.io/borgmatic-collective/borgmatic:latest",
+ "Registry": "https://github.com/borgmatic-collective/docker-borgmatic/pkgs/container/borgmatic",
+ "Project": "https://torsion.org/borgmatic/",
+ "ExtraParams": "--no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/borgmatic.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/borgmatic.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "BORG_RSH",
+ "Target": "BORG_RSH",
+ "Default": "",
+ "Mode": "",
+ "Description": "Your SSH parameters.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "BORG_PASSPHRASE",
+ "Target": "BORG_PASSPHRASE",
+ "Default": "",
+ "Mode": "",
+ "Description": "Your Borg repository passphrase.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "BACKUP_CRON",
+ "Target": "BACKUP_CRON",
+ "Default": "0 1 * * *",
+ "Mode": "",
+ "Description": "Cron schedule to run Borgmatic.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0 1 * * *"
+ },
+ {
+ "@attributes": {
+ "Name": "RUN_ON_STARTUP",
+ "Target": "RUN_ON_STARTUP",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Run borgmatic on startup.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "Borg repository",
+ "Target": "/mnt/borg-repository",
+ "Default": "/mnt/user/appdata/wh-borgmatic/repository",
+ "Mode": "rw",
+ "Description": "Mount your borg backup repository here.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borgmatic config",
+ "Target": "/etc/borgmatic.d",
+ "Default": "/mnt/user/appdata/wh-borgmatic/borgmatic.d",
+ "Mode": "rw",
+ "Description": "Where you need to create crontab.txt and your borgmatic config.yml",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg config",
+ "Target": "/root/.config/borg",
+ "Default": "/mnt/user/appdata/wh-borgmatic/borg",
+ "Mode": "rw",
+ "Description": "The storage for Borg config and keyfiles. Remember to back up your keyfiles\u2014they are needed when encryption is disabled.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg SSH",
+ "Target": "/root/.ssh",
+ "Default": "/mnt/user/appdata/wh-borgmatic/ssh",
+ "Mode": "rw",
+ "Description": "Mount your .ssh or create a new one with SSH keys for your remote repo locations.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg cache",
+ "Target": "/root/.cache/borg",
+ "Default": "/mnt/user/appdata/wh-borgmatic/cache",
+ "Mode": "rw",
+ "Description": "A location to store the Borg chunk cache.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/borgmatic.xml",
+ "CategoryList": [
+ "Backup",
+ "Cloud"
+ ],
+ "LastUpdateScan": 1725300382,
+ "FirstSeen": 1676660881
+ },
{
"Name": "wh-clickhouse24",
"Overview": "ClickHouse is an open-source column-oriented database management system.",
@@ -1741,20 +1909,103 @@
"topPerforming": 5.462
},
{
- "Name": "wh-APPNAME",
- "Repository": "REPONAME",
- "Registry": "https://registry.hub.docker.com/_/REPONAME",
+ "Name": "wh-convertx",
+ "Overview": "Self-hosted online file converter. Supports 800+ formats.",
+ "Repository": "ghcr.io/c4illin/convertx:latest",
+ "Registry": "https://github.com/users/C4illin/packages/container/package/convertx",
+ "Project": "https://github.com/C4illin/ConvertX",
+ "WebUI": "http://[IP]:[PORT:3000]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
"PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
"ReadMe": "https://github.com/whallin/unraid-templates",
"Support": "https://github.com/whallin/unraid-templates/issues",
- "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/APPNAME.png",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/convertx.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/convertx.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "ConvertX web UI port",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "The TCP port ConvertX listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "ConvertX storage",
+ "Target": "/app/data",
+ "Default": "/mnt/user/appdata/wh-convertx",
+ "Mode": "rw",
+ "Description": "The location where ConvertX stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "JWT_SECRET",
+ "Target": "JWT_SECRET",
+ "Default": "",
+ "Mode": "",
+ "Description": "The token to sign the JSON web tokens.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "ACCOUNT_REGISTRATION",
+ "Target": "ACCOUNT_REGISTRATION",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Toggles account registration, doesn't matter for the first account.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "ALLOW_UNAUTHENTICATED",
+ "Target": "ALLOW_UNAUTHENTICATED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Allows anyone to use the service without logging in.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ }
+ ],
"Repo": "whallin's Repository",
- "Blacklist": true,
- "Official": true,
- "Overview": "OVERVIEWTEXT",
"templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/convertx.xml",
- "LastUpdateScan": 1724120224,
- "FirstSeen": 1724120224
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300383,
+ "FirstSeen": 1725300383
},
{
"Name": "wh-dbgate",
@@ -2132,6 +2383,46 @@
"LastUpdateScan": 1724897207,
"FirstSeen": 1724897207
},
+ {
+ "Name": "wh-git-sync",
+ "Overview": "A simple tool to backup and sync your git repositories.",
+ "Requires": "
git-sync requires:\r
- A path mounted for storing repository backups.\r
- A config mapped to "/git-sync/config.yaml".\r
Learn more: https://github.com/AkashRajpurohit/git-sync/wiki/Configuration",
+ "Repository": "ghcr.io/akashrajpurohit/git-sync:latest",
+ "Registry": "https://github.com/AkashRajpurohit/git-sync/pkgs/container/git-sync",
+ "Project": "https://github.com/AkashRajpurohit/git-sync",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/github.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/git-sync.xml",
+ "Config": {
+ "@attributes": {
+ "Name": "git-sync Config",
+ "Target": "/git-sync/config.yaml",
+ "Default": "/mnt/user/appdata/wh-git-sync/config.yaml",
+ "Mode": "ro",
+ "Description": "The location where git-sync stores its configuration.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/git-sync.xml",
+ "CategoryList": [
+ "Backup",
+ "Cloud"
+ ],
+ "LastUpdateScan": 1725300388,
+ "FirstSeen": 1725300388
+ },
{
"Name": "wh-gotenberg8",
"Overview": "A developer-friendly API for converting numerous document formats into PDF files, and more.",
@@ -2337,6 +2628,192 @@
"LastUpdate": 1703142343,
"FirstSeen": 1611652185
},
+ {
+ "Name": "wh-immich-machine-learning",
+ "Overview": "High performance self-hosted photo and video management solution.",
+ "Requires": "
Immich Machine Learning requires:\r
- (Optional) For hardware accelerated machine learning; an CUDA, or OpenVINO capable device.\r
Learn more: https://immich.app/docs/features/ml-hardware-acceleration",
+ "Repository": "ghcr.io/immich-app/immich-machine-learning:release",
+ "Registry": "https://github.com/immich-app/immich/pkgs/container/immich-machine-learning",
+ "Project": "https://immich.app/",
+ "Branch": [
+ {
+ "Tag": "release",
+ "TagDescription": "Default image with CPU acceleration"
+ },
+ {
+ "Tag": "release-cuda",
+ "TagDescription": "Hardware acceleration with CUDA support"
+ },
+ {
+ "Tag": "release-openvino",
+ "TagDescription": "Hardware acceleration with OpenVINO support"
+ }
+ ],
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/immich.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/immich-machine-learning.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Immich machine learning port",
+ "Target": "3003",
+ "Default": "3003",
+ "Mode": "tcp",
+ "Description": "The TCP port Immich Machine Learning listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3003"
+ },
+ {
+ "@attributes": {
+ "Name": "Immich Machine Learning cache",
+ "Target": "/cache",
+ "Default": "/mnt/user/appdata/wh-immich/ml-cache",
+ "Mode": "rw",
+ "Description": "The location where Immich stores its machine learning cache.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "OpenVINO devices",
+ "Target": "",
+ "Default": "",
+ "Mode": "",
+ "Description": "Used for OpenVINO accelerated machine learning.",
+ "Type": "Device",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/dri"
+ },
+ {
+ "@attributes": {
+ "Name": "OpenVINO volume",
+ "Target": "/dev/bus/usb",
+ "Default": "/dev/bus/usb",
+ "Mode": "rw",
+ "Description": "Used for OpenVINO accelerated machine learning.",
+ "Type": "Path",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/bus/usb"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_TTL",
+ "Target": "MACHINE_LEARNING_MODEL_TTL",
+ "Default": "300",
+ "Mode": "",
+ "Description": "Inactivity time (in seconds) before a model is unloaded.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "300"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_TTL_POLL_S",
+ "Target": "MACHINE_LEARNING_MODEL_TTL_POLL_S",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Interval (in seconds) between checks for the model.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_INTER_OP_THREADS",
+ "Target": "MACHINE_LEARNING_MODEL_INTER_OP_THREADS",
+ "Default": "1",
+ "Mode": "",
+ "Description": "Number of parallel model operations.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "1"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_INTRA_OP_THREADS",
+ "Target": "MACHINE_LEARNING_MODEL_INTRA_OP_THREADS",
+ "Default": "2",
+ "Mode": "",
+ "Description": "Number of threads for each model operation.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "2"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_WORKERS",
+ "Target": "MACHINE_LEARNING_WORKERS",
+ "Default": "1",
+ "Mode": "",
+ "Description": "Number of worker processes to spawn.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "1"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_WORKER_TIMEOUT",
+ "Target": "MACHINE_LEARNING_WORKER_TIMEOUT",
+ "Default": "120",
+ "Mode": "",
+ "Description": "Maximum time (in seconds) of unresponsiveness before a worker is killed. (change to 300 for OpenVINO)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "120"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/immich-machine-learning.xml",
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other",
+ "MediaServer-Video",
+ "MediaServer-Photos",
+ "Network-Management"
+ ],
+ "LastUpdateScan": 1725300390,
+ "FirstSeen": 1725300390
+ },
{
"Name": "wh-immich-power-tools",
"Overview": "Power tools for organizing your immich library.",
@@ -2479,6 +2956,135 @@
"LastUpdateScan": 1724882837,
"FirstSeen": 1724882837
},
+ {
+ "Name": "wh-immich-server",
+ "Overview": "High performance self-hosted photo and video management solution.",
+ "Requires": "
Immich Server requires:\r
- A PostgreSQL database.\r
- A Redis-compatibile database. (e.g. Redis, Valkey, KeyDB, DragonflyDB)\r
- One or more paths mounted to '/upload'.\r
- (Optional) For hardware accelerated transcoding; a NVENC, QuickSync, or VA-API capable device.\r
Learn more: https://immich.app/docs/features/hardware-transcoding",
+ "Repository": "ghcr.io/immich-app/immich-server:release",
+ "Registry": "https://github.com/immich-app/immich/pkgs/container/immich-server",
+ "Project": "https://immich.app/",
+ "WebUI": "http://[IP]:[PORT:3001]/",
+ "ExtraParams": "--gpus=all --init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/immich.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/immich-server.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Immich web UI port",
+ "Target": "3001",
+ "Default": "3001",
+ "Mode": "tcp",
+ "Description": "The TCP port Immich listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3001"
+ },
+ {
+ "@attributes": {
+ "Name": "VA-API/QuickSync devices",
+ "Target": "",
+ "Default": "",
+ "Mode": "",
+ "Description": "Used for VA-API/QuickSync accelerated transcoding.",
+ "Type": "Device",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/dri"
+ },
+ {
+ "@attributes": {
+ "Name": "DB_URL",
+ "Target": "DB_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. postgres://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_HOSTNAME",
+ "Target": "REDIS_HOSTNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The host where Redis is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_PORT",
+ "Target": "REDIS_PORT",
+ "Default": "6379",
+ "Mode": "",
+ "Description": "The host port where Redis is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "6379"
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_PASSWORD",
+ "Target": "REDIS_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The password of Redis.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_DBINDEX",
+ "Target": "REDIS_DBINDEX",
+ "Default": "0",
+ "Mode": "",
+ "Description": "The database index of Redis.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/immich-server.xml",
+ "CategoryList": [
+ "MediaApp-Video",
+ "MediaApp-Photos",
+ "MediaServer-Video",
+ "MediaServer-Photos"
+ ],
+ "LastUpdateScan": 1725300395,
+ "FirstSeen": 1725300395
+ },
{
"Deprecated": true,
"Name": "wh-jellyfin",
@@ -2816,26 +3422,357 @@
"topPerforming": 16.164
},
{
- "Name": "wh-maybe",
- "Beta": "true",
- "Repository": "REPONAME",
- "Registry": "https://registry.hub.docker.com/_/REPONAME",
- "Project": "https://maybe.co/",
+ "Name": "wh-matomo",
+ "Overview": "Matomo is the leading open-source analytics platform that gives you more than powerful analytics.",
+ "Requires": "
Matomo requires:\r
- A MySQL/MariaDB database.\r",
+ "Repository": "matomo:apache",
+ "Registry": "https://hub.docker.com/_/matomo/",
+ "Project": "https://matomo.org/",
+ "Branch": [
+ {
+ "Tag": "apache",
+ "TagDescription": "Bundled with Apache, ready to be used"
+ },
+ {
+ "Tag": "fpm",
+ "TagDescription": "Bundled with PHP-FPM, requires an external web server"
+ }
+ ],
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
"PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/matomo.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/matomo.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Matomo web UI port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port Matomo listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "Matomo storage",
+ "Target": "/var/www/html",
+ "Default": "/mnt/user/appdata/wh-matomo",
+ "Mode": "rw",
+ "Description": "The location where Matomo stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_HOST",
+ "Target": "MATOMO_DATABASE_HOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The host where MySQL/MariaDB is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_USERNAME",
+ "Target": "MATOMO_DATABASE_USERNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The username for your MySQL/MariaDB user.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_PASSWORD",
+ "Target": "MATOMO_DATABASE_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The password for your MySQL/MariaDB user.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_DBNAME",
+ "Target": "MATOMO_DATABASE_DBNAME",
+ "Default": "matomo",
+ "Mode": "",
+ "Description": "The Matomo database name for your MySQL/MariaDB database",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_ADAPTER",
+ "Target": "MATOMO_DATABASE_ADAPTER",
+ "Default": "mysql",
+ "Mode": "",
+ "Description": "The Matomo database adapter.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/matomo.xml",
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other",
+ "Network-Web"
+ ],
+ "downloads": 124565790,
+ "stars": 337,
+ "LastUpdate": 1725083369,
+ "LastUpdateScan": 1725300401,
+ "FirstSeen": 1725300401
+ },
+ {
+ "Name": "wh-maybe",
+ "Overview": "The OS for your personal finances.",
+ "Beta": "true",
+ "Requires": "
Maybe requires:\r
- A PostgreSQL database.",
+ "Repository": "ghcr.io/maybe-finance/maybe:latest",
+ "Registry": "https://github.com/maybe-finance/maybe/pkgs/container/maybe",
+ "Project": "https://maybe.co/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
"ReadMe": "https://github.com/whallin/unraid-templates",
"Support": "https://github.com/whallin/unraid-templates/issues",
"Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/maybe.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/maybe.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Maybe web UI port",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "The TCP port Maybe listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "Maybe storage",
+ "Target": "/rails/storage",
+ "Default": "/mnt/user/appdata/wh-maybe",
+ "Mode": "rw",
+ "Description": "The location where Maybe stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SECRET_KEY_BASE",
+ "Target": "SECRET_KEY_BASE",
+ "Default": "",
+ "Mode": "",
+ "Description": "The secret key for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DB_HOST",
+ "Target": "DB_HOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL hostname for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_DB",
+ "Target": "POSTGRES_DB",
+ "Default": "5432",
+ "Mode": "",
+ "Description": "The PostgreSQL port for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "5432"
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_USER",
+ "Target": "POSTGRES_USER",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL username for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_PASSWORD",
+ "Target": "POSTGRES_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL password for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DB_DATABASE_NAME",
+ "Target": "DB_DATABASE_NAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL database name for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "APP_DOMAIN",
+ "Target": "APP_DOMAIN",
+ "Default": "",
+ "Mode": "",
+ "Description": "This domain is used for generating links in emails and elsewhere.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SELF_HOSTING_ENABLED",
+ "Target": "SELF_HOSTING_ENABLED",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Enables self hosting features.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "RAILS_FORCE_SSL",
+ "Target": "RAILS_FORCE_SSL",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "RAILS_ASSUME_SSL",
+ "Target": "RAILS_ASSUME_SSL",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "GOOD_JOB_EXECUTION_MODE",
+ "Target": "GOOD_JOB_EXECUTION_MODE",
+ "Default": "async",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "async"
+ }
+ ],
"Repo": "whallin's Repository",
- "Blacklist": true,
- "Official": true,
- "Overview": "OVERVIEWTEXT",
"templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/maybe.xml",
"CategoryList": [
"Productivity",
"Other"
],
- "LastUpdateScan": 1724120224,
- "FirstSeen": 1724120224
+ "LastUpdateScan": 1725300406,
+ "FirstSeen": 1725300406
},
{
"Name": "wh-mitmproxy",
@@ -2993,12 +3930,476 @@
"FirstSeen": 1724875633
},
{
- "TemplatePath": "/tmp/appFeed/templates/whallinsRepository/whallin/nocodb.xml",
- "errors": [
- "EntityRef: expecting ';'",
- "EntityRef: expecting ';'"
+ "Name": "wh-nocodb",
+ "Overview": "The Open Source Airtable Alternative. Turns any MySQL, PostgreSQL, SQL Server, SQLite, or MariaDB database into a smart spreadsheet.",
+ "Requires": "
NocoDB requires:\r
- (Optional) A PostgreSQL database.\r
NocoDB will fallback to SQLite if no database is provided.",
+ "Repository": "nocodb/nocodb:latest",
+ "Registry": "https://hub.docker.com/r/nocodb/nocodb",
+ "Project": "https://nocodb.com/",
+ "WebUI": "http://[IP]:[PORT:8080]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/nocodb.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/nocodb.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "NocoDB web UI port",
+ "Target": "8080",
+ "Default": "8080",
+ "Mode": "tcp",
+ "Description": "The TCP port NocoDB listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "8080"
+ },
+ {
+ "@attributes": {
+ "Name": "NocoDB storage",
+ "Target": "/usr/app/data",
+ "Default": "/mnt/user/appdata/wh-nocodb",
+ "Mode": "rw",
+ "Description": "The location where NocoDB stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_DB",
+ "Target": "NC_DB",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. pg://HOST:PORT?u=USER&p=PASS&d=DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_AUTH_JWT_SECRET",
+ "Target": "NC_AUTH_JWT_SECRET",
+ "Default": "",
+ "Mode": "",
+ "Description": "This JWT secret is utilized for generating authentication tokens and encrypting credentials for external databases.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_REDIS_URL",
+ "Target": "NC_REDIS_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "Specifies the Redis URL used for caching, e.g. redis://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ }
],
- "FirstSeen": null
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/nocodb.xml",
+ "CategoryList": [
+ "Productivity",
+ "Network-Management"
+ ],
+ "downloads": 11457073,
+ "stars": 62,
+ "trending": 1.975,
+ "trends": [
+ 1.708,
+ 1.85,
+ 1.787,
+ 1.754,
+ 2.221,
+ 2.209,
+ 1.975
+ ],
+ "trendsDate": [
+ 1707608199,
+ 1710381976,
+ 1712981168,
+ 1715581086,
+ 1718179573,
+ 1720778793,
+ 1723377978
+ ],
+ "downloadtrend": [
+ 10170242,
+ 10361913,
+ 10550405,
+ 10738758,
+ 10982689,
+ 11230783,
+ 11457073
+ ],
+ "LastUpdateScan": 1723377978,
+ "LastUpdate": 1723122723,
+ "FirstSeen": 1642424631,
+ "topTrending": 0.2670000000000001,
+ "topPerforming": 1.975
+ },
+ {
+ "Name": "wh-npmplus",
+ "Overview": "Docker container for managing Nginx proxy hosts with a simple, powerful interface.",
+ "Repository": "ghcr.io/zoeyvid/npmplus:latest",
+ "Registry": "https://github.com/ZoeyVid/NPMplus/pkgs/container/npmplus",
+ "Project": "https://github.com/ZoeyVid/NPMplus",
+ "WebUI": "http://[IP]:[PORT:81]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/nginx-proxy-manager.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/npmplus.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "NPMplus web UI port",
+ "Target": "81",
+ "Default": "81",
+ "Mode": "tcp",
+ "Description": "The TCP port NPMplus listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "81"
+ },
+ {
+ "@attributes": {
+ "Name": "GoAccess web UI port",
+ "Target": "91",
+ "Default": "91",
+ "Mode": "tcp",
+ "Description": "The TCP port GoAccess listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "91"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTP port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port HTTP listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTPS port",
+ "Target": "443",
+ "Default": "443",
+ "Mode": "tcp",
+ "Description": "The TCP port HTTPS listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "443"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTP/3 port",
+ "Target": "443",
+ "Default": "443",
+ "Mode": "udp",
+ "Description": "The UDP port HTTP/3 listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "443"
+ },
+ {
+ "@attributes": {
+ "Name": "NPMplus storage",
+ "Target": "/data",
+ "Default": "/mnt/user/appdata/wh-npmplus",
+ "Mode": "rw",
+ "Description": "The location where NPMplus stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_LOG_NOT_FOUND",
+ "Target": "NGINX_LOG_NOT_FOUND",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Allow logging of 404 errors.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_404_REDIRECT",
+ "Target": "NGINX_404_REDIRECT",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Redirect to '/' instead of showing a 404 error page",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_DISABLE_PROXY_BUFFERING",
+ "Target": "NGINX_DISABLE_PROXY_BUFFERING",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Disables the proxy-buffering option of nginx",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "SKIP_IP_RANGES",
+ "Target": "SKIP_IP_RANGES",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Skip feteching/whitelisting IP ranges from AWS and Cloudflare.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "LOGROTATE",
+ "Target": "LOGROTATE",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Enables writing HTTP access logs, stream access logs, and enables daily log rotation.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "LOGROTATIONS",
+ "Target": "LOGROTATIONS",
+ "Default": "7",
+ "Mode": "",
+ "Description": "TSet how often the access.log should be rotated until it is deleted.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "7"
+ },
+ {
+ "@attributes": {
+ "Name": "GOA",
+ "Target": "GOA",
+ "Default": "",
+ "Mode": "false|true",
+ "Description": "Enables GoAccess, requires LOGROTATE set to 'true'.",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "CLEAN",
+ "Target": "CLEAN",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Clean folders",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "CRT",
+ "Target": "CRT",
+ "Default": "36",
+ "Mode": "",
+ "Description": "The amount of hours between Certbot trying to renew your certificates.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "36"
+ },
+ {
+ "@attributes": {
+ "Name": "IPRT",
+ "Target": "IPRT",
+ "Default": "3",
+ "Mode": "",
+ "Description": "The amount of hours between updating the IP ranges from AWS and Cloudflare.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "3"
+ },
+ {
+ "@attributes": {
+ "Name": "GOACLA",
+ "Target": "GOACLA",
+ "Default": "--agent-list --real-os --double-decode --anonymize-ip --anonymize-level=1 --keep-last=30",
+ "Mode": "",
+ "Description": "Arguments that should be passed to GoAccess.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "--agent-list --real-os --double-decode --anonymize-ip --anonymize-level=1 --keep-last=30"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP82",
+ "Target": "PHP82",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Activates PHP 8.2",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP82_APKS",
+ "Target": "PHP82_APKS",
+ "Default": "",
+ "Mode": "",
+ "Description": "Add PHP 8.2 extensions.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PHP83",
+ "Target": "PHP83",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Activates PHP 8.3",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP83_APKS",
+ "Target": "PHP83_APKS",
+ "Default": "",
+ "Mode": "",
+ "Description": "Add PHP 8.3 extensions.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/npmplus.xml",
+ "CategoryList": [
+ "Network-Web",
+ "Network-Proxy",
+ "Network-Other"
+ ],
+ "downloads": 60417,
+ "stars": 4,
+ "LastUpdate": 1725056274,
+ "LastUpdateScan": 1725300411,
+ "FirstSeen": 1725300411
},
{
"Name": "wh-obsidian",
@@ -3291,6 +4692,316 @@
"topTrending": -0.281,
"topPerforming": 0.493
},
+ {
+ "Name": "wh-paperless-ngx",
+ "Overview": "A community-supported supercharged version of paperless: scan, index and archive all your physical documents.",
+ "Requires": "
Paperless-ngx requires:\r
- A Redis-compatibile database. (e.g. Redis, Valkey, KeyDB, DragonflyDB)\r
- (Optional) A PostgreSQL or MySQL/MariaDB database.\r
Paperless-ngx will fallback to SQLite if no database is provided.\r
- (Optional) Tika & Gotenberg for parsing Office documents & '.eml'-files.",
+ "Repository": "ghcr.io/paperless-ngx/paperless-ngx:latest",
+ "Registry": "https://github.com/paperless-ngx/paperless-ngx/pkgs/container/paperless-ngx",
+ "Project": "https://docs.paperless-ngx.com/",
+ "WebUI": "http://[IP]:[PORT:8000]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/paperless-ngx.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/paperless-ngx.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx web UI port",
+ "Target": "8000",
+ "Default": "8000",
+ "Mode": "tcp",
+ "Description": "The TCP port Paperless-ngx listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "8000"
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx storage",
+ "Target": "/usr/src/paperless/data",
+ "Default": "/mnt/user/appdata/wh-paperless-ngx",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx media",
+ "Target": "/usr/src/paperless/media",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx stores your documents.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx consumption",
+ "Target": "/usr/src/paperless/consume",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx looks for documents to import.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx export",
+ "Target": "/usr/src/paperless/export",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx exports documents upon selection.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_REDIS",
+ "Target": "PAPERLESS_REDIS",
+ "Default": "",
+ "Mode": "",
+ "Description": "The Redis connection URL, e.g. redis://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBENGINE",
+ "Target": "PAPERLESS_DBENGINE",
+ "Default": "postgresql|mariadb",
+ "Mode": "",
+ "Description": "The database engine for Paperless-ngx.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "postgresql"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBHOST",
+ "Target": "PAPERLESS_DBHOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database hostname.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBPORT",
+ "Target": "PAPERLESS_DBPORT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database port.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBNAME",
+ "Target": "PAPERLESS_DBNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The Paperless-ngx database name.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBUSER",
+ "Target": "PAPERLESS_DBUSER",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database username.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBPASS",
+ "Target": "PAPERLESS_DBPASS",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database user password.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_SECRET_KEY",
+ "Target": "PAPERLESS_SECRET_KEY",
+ "Default": "",
+ "Mode": "",
+ "Description": "Paperless uses this to make session tokens.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_URL",
+ "Target": "PAPERLESS_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "Configures ALLOWED_HOSTS, CORS_ALLOWED_HOSTS, and CSRF_TRUSTED_ORIGINS all at once.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_OCR_LANGUAGE",
+ "Target": "PAPERLESS_OCR_LANGUAGE",
+ "Default": "eng",
+ "Mode": "",
+ "Description": "The language that will be used when parsing documents: https://docs.paperless-ngx.com/configuration/#PAPERLESS_OCR_LANGUAGE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "eng"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_OCR_LANGUAGES",
+ "Target": "PAPERLESS_OCR_LANGUAGES",
+ "Default": "",
+ "Mode": "",
+ "Description": "Additional OCR languages to install: https://docs.paperless-ngx.com/configuration/#PAPERLESS_OCR_LANGUAGES",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_ENABLED",
+ "Target": "PAPERLESS_TIKA_ENABLED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Toggle the Tika parser.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_ENDPOINT",
+ "Target": "PAPERLESS_TIKA_ENDPOINT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The endpoint URL to reach your Tika server.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_GOTENBERG_ENDPOINT",
+ "Target": "PAPERLESS_TIKA_GOTENBERG_ENDPOINT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The endpoint URL to reach your Gotenberg server.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/paperless-ngx.xml",
+ "CategoryList": [
+ "Productivity",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300416,
+ "FirstSeen": 1647194589
+ },
{
"Name": "wh-pawns",
"Overview": "Pawns.app is an app that pays you to use your internet connection and complete surveys.",
@@ -5116,6 +6827,218 @@
"LastUpdate": 1722556057,
"FirstSeen": 1724962019
},
+ {
+ "Name": "wh-vaultwarden",
+ "Overview": "Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs.",
+ "Requires": "
Vaultwarden requires:\r
- (Optional) A PostgreSQL or MySQL/MariaDB database.\r
Vaultwarden will fallback to SQLite if no database is provided.",
+ "Repository": "ghcr.io/dani-garcia/vaultwarden:latest-alpine",
+ "Registry": "https://github.com/dani-garcia/vaultwarden/pkgs/container/vaultwarden",
+ "Project": "https://github.com/dani-garcia/vaultwarden",
+ "WebUI": "http://[IP]:[PORT:80]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/vaultwarden.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/vaultwarden.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Vaultwarden web UI port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port Vaultwarden listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "Vaultwarden storage",
+ "Target": "/data",
+ "Default": "/mnt/user/appdata/wh-vaultwarden",
+ "Mode": "rw",
+ "Description": "The location where Vaultwarden stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DATABASE_URL",
+ "Target": "DATABASE_URL",
+ "Default": "data/db.sqlite3",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. postgres://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "data/db.sqlite3"
+ },
+ {
+ "@attributes": {
+ "Name": "ADMIN_TOKEN",
+ "Target": "ADMIN_TOKEN",
+ "Default": "Token for the admin interface: https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DOMAIN",
+ "Target": "DOMAIN",
+ "Default": "",
+ "Mode": "",
+ "Description": "The domain must match the address from where you access the server.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SIGNUPS_ALLOWED",
+ "Target": "SIGNUPS_ALLOWED",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Controls if new users can register.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "ICON_REDIRECT_CODE",
+ "Target": "ICON_REDIRECT_CODE",
+ "Default": "302|301|307|308",
+ "Mode": "",
+ "Description": "The HTTP status code to use for redirects to an external icon service.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "302"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_ENABLED",
+ "Target": "PUSH_ENABLED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Enables push notifications. (requires key & ID from https://bitwarden.com/host)",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_INSTALLATION_ID",
+ "Target": "PUSH_INSTALLATION_ID",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_INSTALLATION_KEY",
+ "Target": "PUSH_INSTALLATION_KEY",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_RELAY_URI",
+ "Target": "PUSH_RELAY_URI",
+ "Default": "https://push.bitwarden.com|https://api.bitwarden.eu",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "https://push.bitwarden.com"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_IDENTITY_URI",
+ "Target": "PUSH_IDENTITY_URI",
+ "Default": "https://identity.bitwarden.com|https://identity.bitwarden.eu",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "https://identity.bitwarden.com"
+ },
+ {
+ "@attributes": {
+ "Name": "ENABLE_WEBSOCKET",
+ "Target": "ENABLE_WEBSOCKET",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Enable websocket notifications.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/vaultwarden.xml",
+ "CategoryList": [
+ "Productivity",
+ "Security",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300416,
+ "FirstSeen": 1725300416
+ },
{
"Name": "wh-web-check",
"Overview": "All-in-one OSINT tool for analysing any website.",
@@ -299650,6 +301573,214 @@
"LastUpdate": 1686796069,
"FirstSeen": 1663842410
},
+ {
+ "Name": "eufy-security-ws",
+ "Repository": "bropat/eufy-security-ws",
+ "Registry": "https://hub.docker.com/r/bropat/eufy-security-ws/",
+ "Network": "bridge",
+ "Shell": "sh",
+ "Privileged": "false",
+ "Support": "https://hub.docker.com/r/bropat/eufy-security-ws/",
+ "Project": "https://github.com/bropat/eufy-security-ws",
+ "Overview": "A small server wrapper around eufy-security-client library to access it via a WebSocket\n\r\nExposes the client library over websocket\n\r\nImplements almost all functionality of the client library Including live streaming\nhttps://hub.docker.com/r/bropat/eufy-security-ws/",
+ "WebUI": "http://[IP]:[PORT:3000]",
+ "TemplateURL": "https://raw.githubusercontent.com/twist3dimages/unraid-templates/master/Eufy-Security-WS/eufy-security-ws.xml",
+ "Icon": "https://github.com/bropat/eufy-security-ws/raw/master/docs/_media/eufy-security-ws.png",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Container Path 1",
+ "Target": "/data",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "/mnt/user/appdata/eufy-security-ws"
+ },
+ {
+ "@attributes": {
+ "Name": "Container Port 1",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "USERNAME",
+ "Target": "USERNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "Eufy Account Username (required)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PASSWORD",
+ "Target": "PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "Eufy Account Password (required)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "COUNTRY",
+ "Target": "COUNTRY",
+ "Default": "US",
+ "Mode": "",
+ "Description": "ISO 3166-1 Alpha-2 country code (default: US)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "US"
+ },
+ {
+ "@attributes": {
+ "Name": "LANGUAGE",
+ "Target": "LANGUAGE",
+ "Default": "en",
+ "Mode": "",
+ "Description": "ISO 639 language code (default: en)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "en"
+ },
+ {
+ "@attributes": {
+ "Name": "TRUSTED_DEVICE_NAME",
+ "Target": "TRUSTED_DEVICE_NAME",
+ "Default": "eufyclient",
+ "Mode": "",
+ "Description": " Label of the trusted devices (viewable with 2fa activated in Eufy App; default: random device name)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "EVENT_DURATION_SECONDS",
+ "Target": "EVENT_DURATION_SECONDS",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Duration in seconds before an event is reset E.g. motion event (default: 10 sec.)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "P2P_CONNECTION_SETUP",
+ "Target": "P2P_CONNECTION_SETUP",
+ "Default": "",
+ "Mode": "",
+ "Description": "P2P connection setup (default: 0 ; Prefers local connection over cloud)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0"
+ },
+ {
+ "@attributes": {
+ "Name": "POLLING_INTERVAL_MINUTES",
+ "Target": "POLLING_INTERVAL_MINUTES",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Polling intervall for data refresh from Eufy Cloud (default: 10 min.)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "ACCEPT_INVITATIONS",
+ "Target": "ACCEPT_INVITATIONS",
+ "Default": "false",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "STATION_IP_ADDRESSES",
+ "Target": "STATION_IP_ADDRESSES",
+ "Default": "",
+ "Mode": "",
+ "Description": "Suggested IP addresses for a stations (default: unset; value format: station_serial1:ipaddress1;station_serial2:ipaddress2)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DEBUG",
+ "Target": "DEBUG",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ }
+ ],
+ "Repo": "Exes' Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/ExesRepository/Eufy-Security-WS/eufy-security-ws.xml",
+ "CategoryList": [
+ "HomeAutomation"
+ ],
+ "downloads": 911047,
+ "stars": 8,
+ "LastUpdate": 1724774149,
+ "LastUpdateScan": 1725300420,
+ "FirstSeen": 1725300420
+ },
{
"Name": "mjpg-streamer",
"Repository": "registry.gitlab.com/luckyturtledev/docker-mjpg-streamer:latest",
diff --git a/applicationFeed.json b/applicationFeed.json
index ea99b7f0c..293605e9a 100755
--- a/applicationFeed.json
+++ b/applicationFeed.json
@@ -1,7 +1,7 @@
{
- "apps": 2416,
- "last_updated_timestamp": 1725296086,
- "last_updated": "2024-09-02 12:54",
+ "apps": 2425,
+ "last_updated_timestamp": 1725300423,
+ "last_updated": "2024-09-02 14:07",
"categories": [
{
"Cat": "AI:",
@@ -1772,6 +1772,174 @@
"LastUpdate": 1721083541,
"FirstSeen": 1724882823
},
+ {
+ "Name": "wh-borgmatic",
+ "Overview": "Simple, configuration-driven backup software for servers and workstations.",
+ "Requires": "
Borgmatic requires:\r
- One or more paths mounted for backing up.",
+ "Repository": "ghcr.io/borgmatic-collective/borgmatic:latest",
+ "Registry": "https://github.com/borgmatic-collective/docker-borgmatic/pkgs/container/borgmatic",
+ "Project": "https://torsion.org/borgmatic/",
+ "ExtraParams": "--no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/borgmatic.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/borgmatic.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "BORG_RSH",
+ "Target": "BORG_RSH",
+ "Default": "",
+ "Mode": "",
+ "Description": "Your SSH parameters.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "BORG_PASSPHRASE",
+ "Target": "BORG_PASSPHRASE",
+ "Default": "",
+ "Mode": "",
+ "Description": "Your Borg repository passphrase.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "BACKUP_CRON",
+ "Target": "BACKUP_CRON",
+ "Default": "0 1 * * *",
+ "Mode": "",
+ "Description": "Cron schedule to run Borgmatic.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0 1 * * *"
+ },
+ {
+ "@attributes": {
+ "Name": "RUN_ON_STARTUP",
+ "Target": "RUN_ON_STARTUP",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Run borgmatic on startup.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "Borg repository",
+ "Target": "/mnt/borg-repository",
+ "Default": "/mnt/user/appdata/wh-borgmatic/repository",
+ "Mode": "rw",
+ "Description": "Mount your borg backup repository here.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borgmatic config",
+ "Target": "/etc/borgmatic.d",
+ "Default": "/mnt/user/appdata/wh-borgmatic/borgmatic.d",
+ "Mode": "rw",
+ "Description": "Where you need to create crontab.txt and your borgmatic config.yml",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg config",
+ "Target": "/root/.config/borg",
+ "Default": "/mnt/user/appdata/wh-borgmatic/borg",
+ "Mode": "rw",
+ "Description": "The storage for Borg config and keyfiles. Remember to back up your keyfiles\u2014they are needed when encryption is disabled.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg SSH",
+ "Target": "/root/.ssh",
+ "Default": "/mnt/user/appdata/wh-borgmatic/ssh",
+ "Mode": "rw",
+ "Description": "Mount your .ssh or create a new one with SSH keys for your remote repo locations.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Borg cache",
+ "Target": "/root/.cache/borg",
+ "Default": "/mnt/user/appdata/wh-borgmatic/cache",
+ "Mode": "rw",
+ "Description": "A location to store the Borg chunk cache.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/borgmatic.xml",
+ "CategoryList": [
+ "Backup",
+ "Cloud"
+ ],
+ "LastUpdateScan": 1725300382,
+ "FirstSeen": 1676660881
+ },
{
"Name": "wh-clickhouse24",
"Overview": "ClickHouse is an open-source column-oriented database management system.",
@@ -1907,20 +2075,103 @@
"topPerforming": 5.462
},
{
- "Name": "wh-APPNAME",
- "Repository": "REPONAME",
- "Registry": "https://registry.hub.docker.com/_/REPONAME",
+ "Name": "wh-convertx",
+ "Overview": "Self-hosted online file converter. Supports 800+ formats.",
+ "Repository": "ghcr.io/c4illin/convertx:latest",
+ "Registry": "https://github.com/users/C4illin/packages/container/package/convertx",
+ "Project": "https://github.com/C4illin/ConvertX",
+ "WebUI": "http://[IP]:[PORT:3000]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
"PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
"ReadMe": "https://github.com/whallin/unraid-templates",
"Support": "https://github.com/whallin/unraid-templates/issues",
- "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/APPNAME.png",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/convertx.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/convertx.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "ConvertX web UI port",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "The TCP port ConvertX listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "ConvertX storage",
+ "Target": "/app/data",
+ "Default": "/mnt/user/appdata/wh-convertx",
+ "Mode": "rw",
+ "Description": "The location where ConvertX stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "JWT_SECRET",
+ "Target": "JWT_SECRET",
+ "Default": "",
+ "Mode": "",
+ "Description": "The token to sign the JSON web tokens.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "ACCOUNT_REGISTRATION",
+ "Target": "ACCOUNT_REGISTRATION",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Toggles account registration, doesn't matter for the first account.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "ALLOW_UNAUTHENTICATED",
+ "Target": "ALLOW_UNAUTHENTICATED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Allows anyone to use the service without logging in.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ }
+ ],
"Repo": "whallin's Repository",
- "Blacklist": true,
- "Official": true,
- "Overview": "OVERVIEWTEXT",
"templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/convertx.xml",
- "LastUpdateScan": 1724120224,
- "FirstSeen": 1724120224
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300383,
+ "FirstSeen": 1725300383
},
{
"Name": "wh-dbgate",
@@ -2298,6 +2549,46 @@
"LastUpdateScan": 1724897207,
"FirstSeen": 1724897207
},
+ {
+ "Name": "wh-git-sync",
+ "Overview": "A simple tool to backup and sync your git repositories.",
+ "Requires": "
git-sync requires:\r
- A path mounted for storing repository backups.\r
- A config mapped to "/git-sync/config.yaml".\r
Learn more: https://github.com/AkashRajpurohit/git-sync/wiki/Configuration",
+ "Repository": "ghcr.io/akashrajpurohit/git-sync:latest",
+ "Registry": "https://github.com/AkashRajpurohit/git-sync/pkgs/container/git-sync",
+ "Project": "https://github.com/AkashRajpurohit/git-sync",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/github.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/git-sync.xml",
+ "Config": {
+ "@attributes": {
+ "Name": "git-sync Config",
+ "Target": "/git-sync/config.yaml",
+ "Default": "/mnt/user/appdata/wh-git-sync/config.yaml",
+ "Mode": "ro",
+ "Description": "The location where git-sync stores its configuration.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/git-sync.xml",
+ "CategoryList": [
+ "Backup",
+ "Cloud"
+ ],
+ "LastUpdateScan": 1725300388,
+ "FirstSeen": 1725300388
+ },
{
"Name": "wh-gotenberg8",
"Overview": "A developer-friendly API for converting numerous document formats into PDF files, and more.",
@@ -2503,6 +2794,192 @@
"LastUpdate": 1703142343,
"FirstSeen": 1611652185
},
+ {
+ "Name": "wh-immich-machine-learning",
+ "Overview": "High performance self-hosted photo and video management solution.",
+ "Requires": "
Immich Machine Learning requires:\r
- (Optional) For hardware accelerated machine learning; an CUDA, or OpenVINO capable device.\r
Learn more: https://immich.app/docs/features/ml-hardware-acceleration",
+ "Repository": "ghcr.io/immich-app/immich-machine-learning:release",
+ "Registry": "https://github.com/immich-app/immich/pkgs/container/immich-machine-learning",
+ "Project": "https://immich.app/",
+ "Branch": [
+ {
+ "Tag": "release",
+ "TagDescription": "Default image with CPU acceleration"
+ },
+ {
+ "Tag": "release-cuda",
+ "TagDescription": "Hardware acceleration with CUDA support"
+ },
+ {
+ "Tag": "release-openvino",
+ "TagDescription": "Hardware acceleration with OpenVINO support"
+ }
+ ],
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/immich.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/immich-machine-learning.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Immich machine learning port",
+ "Target": "3003",
+ "Default": "3003",
+ "Mode": "tcp",
+ "Description": "The TCP port Immich Machine Learning listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3003"
+ },
+ {
+ "@attributes": {
+ "Name": "Immich Machine Learning cache",
+ "Target": "/cache",
+ "Default": "/mnt/user/appdata/wh-immich/ml-cache",
+ "Mode": "rw",
+ "Description": "The location where Immich stores its machine learning cache.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "OpenVINO devices",
+ "Target": "",
+ "Default": "",
+ "Mode": "",
+ "Description": "Used for OpenVINO accelerated machine learning.",
+ "Type": "Device",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/dri"
+ },
+ {
+ "@attributes": {
+ "Name": "OpenVINO volume",
+ "Target": "/dev/bus/usb",
+ "Default": "/dev/bus/usb",
+ "Mode": "rw",
+ "Description": "Used for OpenVINO accelerated machine learning.",
+ "Type": "Path",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/bus/usb"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_TTL",
+ "Target": "MACHINE_LEARNING_MODEL_TTL",
+ "Default": "300",
+ "Mode": "",
+ "Description": "Inactivity time (in seconds) before a model is unloaded.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "300"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_TTL_POLL_S",
+ "Target": "MACHINE_LEARNING_MODEL_TTL_POLL_S",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Interval (in seconds) between checks for the model.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_INTER_OP_THREADS",
+ "Target": "MACHINE_LEARNING_MODEL_INTER_OP_THREADS",
+ "Default": "1",
+ "Mode": "",
+ "Description": "Number of parallel model operations.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "1"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_MODEL_INTRA_OP_THREADS",
+ "Target": "MACHINE_LEARNING_MODEL_INTRA_OP_THREADS",
+ "Default": "2",
+ "Mode": "",
+ "Description": "Number of threads for each model operation.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "2"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_WORKERS",
+ "Target": "MACHINE_LEARNING_WORKERS",
+ "Default": "1",
+ "Mode": "",
+ "Description": "Number of worker processes to spawn.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "1"
+ },
+ {
+ "@attributes": {
+ "Name": "MACHINE_LEARNING_WORKER_TIMEOUT",
+ "Target": "MACHINE_LEARNING_WORKER_TIMEOUT",
+ "Default": "120",
+ "Mode": "",
+ "Description": "Maximum time (in seconds) of unresponsiveness before a worker is killed. (change to 300 for OpenVINO)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "120"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/immich-machine-learning.xml",
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other",
+ "MediaServer-Video",
+ "MediaServer-Photos",
+ "Network-Management"
+ ],
+ "LastUpdateScan": 1725300390,
+ "FirstSeen": 1725300390
+ },
{
"Name": "wh-immich-power-tools",
"Overview": "Power tools for organizing your immich library.",
@@ -2645,6 +3122,135 @@
"LastUpdateScan": 1724882837,
"FirstSeen": 1724882837
},
+ {
+ "Name": "wh-immich-server",
+ "Overview": "High performance self-hosted photo and video management solution.",
+ "Requires": "
Immich Server requires:\r
- A PostgreSQL database.\r
- A Redis-compatibile database. (e.g. Redis, Valkey, KeyDB, DragonflyDB)\r
- One or more paths mounted to '/upload'.\r
- (Optional) For hardware accelerated transcoding; a NVENC, QuickSync, or VA-API capable device.\r
Learn more: https://immich.app/docs/features/hardware-transcoding",
+ "Repository": "ghcr.io/immich-app/immich-server:release",
+ "Registry": "https://github.com/immich-app/immich/pkgs/container/immich-server",
+ "Project": "https://immich.app/",
+ "WebUI": "http://[IP]:[PORT:3001]/",
+ "ExtraParams": "--gpus=all --init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/immich.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/immich-server.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Immich web UI port",
+ "Target": "3001",
+ "Default": "3001",
+ "Mode": "tcp",
+ "Description": "The TCP port Immich listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3001"
+ },
+ {
+ "@attributes": {
+ "Name": "VA-API/QuickSync devices",
+ "Target": "",
+ "Default": "",
+ "Mode": "",
+ "Description": "Used for VA-API/QuickSync accelerated transcoding.",
+ "Type": "Device",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "/dev/dri"
+ },
+ {
+ "@attributes": {
+ "Name": "DB_URL",
+ "Target": "DB_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. postgres://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_HOSTNAME",
+ "Target": "REDIS_HOSTNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The host where Redis is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_PORT",
+ "Target": "REDIS_PORT",
+ "Default": "6379",
+ "Mode": "",
+ "Description": "The host port where Redis is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "6379"
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_PASSWORD",
+ "Target": "REDIS_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The password of Redis.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "REDIS_DBINDEX",
+ "Target": "REDIS_DBINDEX",
+ "Default": "0",
+ "Mode": "",
+ "Description": "The database index of Redis.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/immich-server.xml",
+ "CategoryList": [
+ "MediaApp-Video",
+ "MediaApp-Photos",
+ "MediaServer-Video",
+ "MediaServer-Photos"
+ ],
+ "LastUpdateScan": 1725300395,
+ "FirstSeen": 1725300395
+ },
{
"Deprecated": true,
"Name": "wh-jellyfin",
@@ -2982,26 +3588,357 @@
"topPerforming": 16.164
},
{
- "Name": "wh-maybe",
- "Beta": "true",
- "Repository": "REPONAME",
- "Registry": "https://registry.hub.docker.com/_/REPONAME",
- "Project": "https://maybe.co/",
+ "Name": "wh-matomo",
+ "Overview": "Matomo is the leading open-source analytics platform that gives you more than powerful analytics.",
+ "Requires": "
Matomo requires:\r
- A MySQL/MariaDB database.\r",
+ "Repository": "matomo:apache",
+ "Registry": "https://hub.docker.com/_/matomo/",
+ "Project": "https://matomo.org/",
+ "Branch": [
+ {
+ "Tag": "apache",
+ "TagDescription": "Bundled with Apache, ready to be used"
+ },
+ {
+ "Tag": "fpm",
+ "TagDescription": "Bundled with PHP-FPM, requires an external web server"
+ }
+ ],
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
"PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/matomo.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/matomo.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Matomo web UI port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port Matomo listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "Matomo storage",
+ "Target": "/var/www/html",
+ "Default": "/mnt/user/appdata/wh-matomo",
+ "Mode": "rw",
+ "Description": "The location where Matomo stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_HOST",
+ "Target": "MATOMO_DATABASE_HOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The host where MySQL/MariaDB is running.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_USERNAME",
+ "Target": "MATOMO_DATABASE_USERNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The username for your MySQL/MariaDB user.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_PASSWORD",
+ "Target": "MATOMO_DATABASE_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The password for your MySQL/MariaDB user.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_DBNAME",
+ "Target": "MATOMO_DATABASE_DBNAME",
+ "Default": "matomo",
+ "Mode": "",
+ "Description": "The Matomo database name for your MySQL/MariaDB database",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "MATOMO_DATABASE_ADAPTER",
+ "Target": "MATOMO_DATABASE_ADAPTER",
+ "Default": "mysql",
+ "Mode": "",
+ "Description": "The Matomo database adapter.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/matomo.xml",
+ "CategoryList": [
+ "Productivity",
+ "Tools-Utilities",
+ "Other",
+ "Network-Web"
+ ],
+ "downloads": 124565790,
+ "stars": 337,
+ "LastUpdate": 1725083369,
+ "LastUpdateScan": 1725300401,
+ "FirstSeen": 1725300401
+ },
+ {
+ "Name": "wh-maybe",
+ "Overview": "The OS for your personal finances.",
+ "Beta": "true",
+ "Requires": "
Maybe requires:\r
- A PostgreSQL database.",
+ "Repository": "ghcr.io/maybe-finance/maybe:latest",
+ "Registry": "https://github.com/maybe-finance/maybe/pkgs/container/maybe",
+ "Project": "https://maybe.co/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
"ReadMe": "https://github.com/whallin/unraid-templates",
"Support": "https://github.com/whallin/unraid-templates/issues",
"Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/maybe.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/maybe.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Maybe web UI port",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "The TCP port Maybe listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "Maybe storage",
+ "Target": "/rails/storage",
+ "Default": "/mnt/user/appdata/wh-maybe",
+ "Mode": "rw",
+ "Description": "The location where Maybe stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SECRET_KEY_BASE",
+ "Target": "SECRET_KEY_BASE",
+ "Default": "",
+ "Mode": "",
+ "Description": "The secret key for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DB_HOST",
+ "Target": "DB_HOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL hostname for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_DB",
+ "Target": "POSTGRES_DB",
+ "Default": "5432",
+ "Mode": "",
+ "Description": "The PostgreSQL port for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "5432"
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_USER",
+ "Target": "POSTGRES_USER",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL username for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "POSTGRES_PASSWORD",
+ "Target": "POSTGRES_PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL password for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DB_DATABASE_NAME",
+ "Target": "DB_DATABASE_NAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The PostgreSQL database name for your Maybe instance.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "APP_DOMAIN",
+ "Target": "APP_DOMAIN",
+ "Default": "",
+ "Mode": "",
+ "Description": "This domain is used for generating links in emails and elsewhere.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SELF_HOSTING_ENABLED",
+ "Target": "SELF_HOSTING_ENABLED",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Enables self hosting features.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "RAILS_FORCE_SSL",
+ "Target": "RAILS_FORCE_SSL",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "RAILS_ASSUME_SSL",
+ "Target": "RAILS_ASSUME_SSL",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "GOOD_JOB_EXECUTION_MODE",
+ "Target": "GOOD_JOB_EXECUTION_MODE",
+ "Default": "async",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "async"
+ }
+ ],
"Repo": "whallin's Repository",
- "Blacklist": true,
- "Official": true,
- "Overview": "OVERVIEWTEXT",
"templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/maybe.xml",
"CategoryList": [
"Productivity",
"Other"
],
- "LastUpdateScan": 1724120224,
- "FirstSeen": 1724120224
+ "LastUpdateScan": 1725300406,
+ "FirstSeen": 1725300406
},
{
"Name": "wh-mitmproxy",
@@ -3159,12 +4096,476 @@
"FirstSeen": 1724875633
},
{
- "TemplatePath": "/tmp/appFeed/templates/whallinsRepository/whallin/nocodb.xml",
- "errors": [
- "EntityRef: expecting ';'",
- "EntityRef: expecting ';'"
+ "Name": "wh-nocodb",
+ "Overview": "The Open Source Airtable Alternative. Turns any MySQL, PostgreSQL, SQL Server, SQLite, or MariaDB database into a smart spreadsheet.",
+ "Requires": "
NocoDB requires:\r
- (Optional) A PostgreSQL database.\r
NocoDB will fallback to SQLite if no database is provided.",
+ "Repository": "nocodb/nocodb:latest",
+ "Registry": "https://hub.docker.com/r/nocodb/nocodb",
+ "Project": "https://nocodb.com/",
+ "WebUI": "http://[IP]:[PORT:8080]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/nocodb.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/nocodb.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "NocoDB web UI port",
+ "Target": "8080",
+ "Default": "8080",
+ "Mode": "tcp",
+ "Description": "The TCP port NocoDB listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "8080"
+ },
+ {
+ "@attributes": {
+ "Name": "NocoDB storage",
+ "Target": "/usr/app/data",
+ "Default": "/mnt/user/appdata/wh-nocodb",
+ "Mode": "rw",
+ "Description": "The location where NocoDB stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_DB",
+ "Target": "NC_DB",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. pg://HOST:PORT?u=USER&p=PASS&d=DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_AUTH_JWT_SECRET",
+ "Target": "NC_AUTH_JWT_SECRET",
+ "Default": "",
+ "Mode": "",
+ "Description": "This JWT secret is utilized for generating authentication tokens and encrypting credentials for external databases.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "NC_REDIS_URL",
+ "Target": "NC_REDIS_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "Specifies the Redis URL used for caching, e.g. redis://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ }
],
- "FirstSeen": null
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/nocodb.xml",
+ "CategoryList": [
+ "Productivity",
+ "Network-Management"
+ ],
+ "downloads": 11457073,
+ "stars": 62,
+ "trending": 1.975,
+ "trends": [
+ 1.708,
+ 1.85,
+ 1.787,
+ 1.754,
+ 2.221,
+ 2.209,
+ 1.975
+ ],
+ "trendsDate": [
+ 1707608199,
+ 1710381976,
+ 1712981168,
+ 1715581086,
+ 1718179573,
+ 1720778793,
+ 1723377978
+ ],
+ "downloadtrend": [
+ 10170242,
+ 10361913,
+ 10550405,
+ 10738758,
+ 10982689,
+ 11230783,
+ 11457073
+ ],
+ "LastUpdateScan": 1723377978,
+ "LastUpdate": 1723122723,
+ "FirstSeen": 1642424631,
+ "topTrending": 0.2670000000000001,
+ "topPerforming": 1.975
+ },
+ {
+ "Name": "wh-npmplus",
+ "Overview": "Docker container for managing Nginx proxy hosts with a simple, powerful interface.",
+ "Repository": "ghcr.io/zoeyvid/npmplus:latest",
+ "Registry": "https://github.com/ZoeyVid/NPMplus/pkgs/container/npmplus",
+ "Project": "https://github.com/ZoeyVid/NPMplus",
+ "WebUI": "http://[IP]:[PORT:81]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/nginx-proxy-manager.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/npmplus.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "NPMplus web UI port",
+ "Target": "81",
+ "Default": "81",
+ "Mode": "tcp",
+ "Description": "The TCP port NPMplus listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "81"
+ },
+ {
+ "@attributes": {
+ "Name": "GoAccess web UI port",
+ "Target": "91",
+ "Default": "91",
+ "Mode": "tcp",
+ "Description": "The TCP port GoAccess listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "91"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTP port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port HTTP listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTPS port",
+ "Target": "443",
+ "Default": "443",
+ "Mode": "tcp",
+ "Description": "The TCP port HTTPS listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "443"
+ },
+ {
+ "@attributes": {
+ "Name": "HTTP/3 port",
+ "Target": "443",
+ "Default": "443",
+ "Mode": "udp",
+ "Description": "The UDP port HTTP/3 listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "443"
+ },
+ {
+ "@attributes": {
+ "Name": "NPMplus storage",
+ "Target": "/data",
+ "Default": "/mnt/user/appdata/wh-npmplus",
+ "Mode": "rw",
+ "Description": "The location where NPMplus stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_LOG_NOT_FOUND",
+ "Target": "NGINX_LOG_NOT_FOUND",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Allow logging of 404 errors.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_404_REDIRECT",
+ "Target": "NGINX_404_REDIRECT",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Redirect to '/' instead of showing a 404 error page",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "NGINX_DISABLE_PROXY_BUFFERING",
+ "Target": "NGINX_DISABLE_PROXY_BUFFERING",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Disables the proxy-buffering option of nginx",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "SKIP_IP_RANGES",
+ "Target": "SKIP_IP_RANGES",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Skip feteching/whitelisting IP ranges from AWS and Cloudflare.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "LOGROTATE",
+ "Target": "LOGROTATE",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Enables writing HTTP access logs, stream access logs, and enables daily log rotation.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "LOGROTATIONS",
+ "Target": "LOGROTATIONS",
+ "Default": "7",
+ "Mode": "",
+ "Description": "TSet how often the access.log should be rotated until it is deleted.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "7"
+ },
+ {
+ "@attributes": {
+ "Name": "GOA",
+ "Target": "GOA",
+ "Default": "",
+ "Mode": "false|true",
+ "Description": "Enables GoAccess, requires LOGROTATE set to 'true'.",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "CLEAN",
+ "Target": "CLEAN",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Clean folders",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "CRT",
+ "Target": "CRT",
+ "Default": "36",
+ "Mode": "",
+ "Description": "The amount of hours between Certbot trying to renew your certificates.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "36"
+ },
+ {
+ "@attributes": {
+ "Name": "IPRT",
+ "Target": "IPRT",
+ "Default": "3",
+ "Mode": "",
+ "Description": "The amount of hours between updating the IP ranges from AWS and Cloudflare.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "3"
+ },
+ {
+ "@attributes": {
+ "Name": "GOACLA",
+ "Target": "GOACLA",
+ "Default": "--agent-list --real-os --double-decode --anonymize-ip --anonymize-level=1 --keep-last=30",
+ "Mode": "",
+ "Description": "Arguments that should be passed to GoAccess.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "--agent-list --real-os --double-decode --anonymize-ip --anonymize-level=1 --keep-last=30"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP82",
+ "Target": "PHP82",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Activates PHP 8.2",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP82_APKS",
+ "Target": "PHP82_APKS",
+ "Default": "",
+ "Mode": "",
+ "Description": "Add PHP 8.2 extensions.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PHP83",
+ "Target": "PHP83",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Activates PHP 8.3",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PHP83_APKS",
+ "Target": "PHP83_APKS",
+ "Default": "",
+ "Mode": "",
+ "Description": "Add PHP 8.3 extensions.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/npmplus.xml",
+ "CategoryList": [
+ "Network-Web",
+ "Network-Proxy",
+ "Network-Other"
+ ],
+ "downloads": 60417,
+ "stars": 4,
+ "LastUpdate": 1725056274,
+ "LastUpdateScan": 1725300411,
+ "FirstSeen": 1725300411
},
{
"Name": "wh-obsidian",
@@ -3457,6 +4858,316 @@
"topTrending": -0.281,
"topPerforming": 0.493
},
+ {
+ "Name": "wh-paperless-ngx",
+ "Overview": "A community-supported supercharged version of paperless: scan, index and archive all your physical documents.",
+ "Requires": "
Paperless-ngx requires:\r
- A Redis-compatibile database. (e.g. Redis, Valkey, KeyDB, DragonflyDB)\r
- (Optional) A PostgreSQL or MySQL/MariaDB database.\r
Paperless-ngx will fallback to SQLite if no database is provided.\r
- (Optional) Tika & Gotenberg for parsing Office documents & '.eml'-files.",
+ "Repository": "ghcr.io/paperless-ngx/paperless-ngx:latest",
+ "Registry": "https://github.com/paperless-ngx/paperless-ngx/pkgs/container/paperless-ngx",
+ "Project": "https://docs.paperless-ngx.com/",
+ "WebUI": "http://[IP]:[PORT:8000]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/paperless-ngx.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/paperless-ngx.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx web UI port",
+ "Target": "8000",
+ "Default": "8000",
+ "Mode": "tcp",
+ "Description": "The TCP port Paperless-ngx listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "8000"
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx storage",
+ "Target": "/usr/src/paperless/data",
+ "Default": "/mnt/user/appdata/wh-paperless-ngx",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx media",
+ "Target": "/usr/src/paperless/media",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx stores your documents.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx consumption",
+ "Target": "/usr/src/paperless/consume",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx looks for documents to import.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "Paperless-ngx export",
+ "Target": "/usr/src/paperless/export",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "The location where Paperless-ngx exports documents upon selection.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "TZ",
+ "Target": "TZ",
+ "Default": "Etc/UTC",
+ "Mode": "",
+ "Description": "Specify a timezone: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "Etc/UTC"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_REDIS",
+ "Target": "PAPERLESS_REDIS",
+ "Default": "",
+ "Mode": "",
+ "Description": "The Redis connection URL, e.g. redis://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBENGINE",
+ "Target": "PAPERLESS_DBENGINE",
+ "Default": "postgresql|mariadb",
+ "Mode": "",
+ "Description": "The database engine for Paperless-ngx.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "postgresql"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBHOST",
+ "Target": "PAPERLESS_DBHOST",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database hostname.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBPORT",
+ "Target": "PAPERLESS_DBPORT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database port.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBNAME",
+ "Target": "PAPERLESS_DBNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "The Paperless-ngx database name.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBUSER",
+ "Target": "PAPERLESS_DBUSER",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database username.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_DBPASS",
+ "Target": "PAPERLESS_DBPASS",
+ "Default": "",
+ "Mode": "",
+ "Description": "The database user password.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_SECRET_KEY",
+ "Target": "PAPERLESS_SECRET_KEY",
+ "Default": "",
+ "Mode": "",
+ "Description": "Paperless uses this to make session tokens.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_URL",
+ "Target": "PAPERLESS_URL",
+ "Default": "",
+ "Mode": "",
+ "Description": "Configures ALLOWED_HOSTS, CORS_ALLOWED_HOSTS, and CSRF_TRUSTED_ORIGINS all at once.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_OCR_LANGUAGE",
+ "Target": "PAPERLESS_OCR_LANGUAGE",
+ "Default": "eng",
+ "Mode": "",
+ "Description": "The language that will be used when parsing documents: https://docs.paperless-ngx.com/configuration/#PAPERLESS_OCR_LANGUAGE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "eng"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_OCR_LANGUAGES",
+ "Target": "PAPERLESS_OCR_LANGUAGES",
+ "Default": "",
+ "Mode": "",
+ "Description": "Additional OCR languages to install: https://docs.paperless-ngx.com/configuration/#PAPERLESS_OCR_LANGUAGES",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_ENABLED",
+ "Target": "PAPERLESS_TIKA_ENABLED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Toggle the Tika parser.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_ENDPOINT",
+ "Target": "PAPERLESS_TIKA_ENDPOINT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The endpoint URL to reach your Tika server.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PAPERLESS_TIKA_GOTENBERG_ENDPOINT",
+ "Target": "PAPERLESS_TIKA_GOTENBERG_ENDPOINT",
+ "Default": "",
+ "Mode": "",
+ "Description": "The endpoint URL to reach your Gotenberg server.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "Official": true,
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/paperless-ngx.xml",
+ "CategoryList": [
+ "Productivity",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300416,
+ "FirstSeen": 1647194589
+ },
{
"Name": "wh-pawns",
"Overview": "Pawns.app is an app that pays you to use your internet connection and complete surveys.",
@@ -5282,6 +6993,218 @@
"LastUpdate": 1722556057,
"FirstSeen": 1724962019
},
+ {
+ "Name": "wh-vaultwarden",
+ "Overview": "Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs.",
+ "Requires": "
Vaultwarden requires:\r
- (Optional) A PostgreSQL or MySQL/MariaDB database.\r
Vaultwarden will fallback to SQLite if no database is provided.",
+ "Repository": "ghcr.io/dani-garcia/vaultwarden:latest-alpine",
+ "Registry": "https://github.com/dani-garcia/vaultwarden/pkgs/container/vaultwarden",
+ "Project": "https://github.com/dani-garcia/vaultwarden",
+ "WebUI": "http://[IP]:[PORT:80]/",
+ "ExtraParams": "--init --no-healthcheck",
+ "Network": "bridge",
+ "Privileged": "false",
+ "PrivilegedReq": "false",
+ "Shell": "bash",
+ "GitHub": "https://github.com/whallin/unraid-templates",
+ "ReadMe": "https://github.com/whallin/unraid-templates",
+ "Support": "https://github.com/whallin/unraid-templates/issues",
+ "Icon": "https://raw.githubusercontent.com/whallin/unraid-templates/main/whallin/imgs/vaultwarden.png",
+ "TemplateURL": "https://raw.githubusercontent.com/whallin/unraid-templates/master/whallin/vaultwarden.xml",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Vaultwarden web UI port",
+ "Target": "80",
+ "Default": "80",
+ "Mode": "tcp",
+ "Description": "The TCP port Vaultwarden listens on.",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "80"
+ },
+ {
+ "@attributes": {
+ "Name": "Vaultwarden storage",
+ "Target": "/data",
+ "Default": "/mnt/user/appdata/wh-vaultwarden",
+ "Mode": "rw",
+ "Description": "The location where Vaultwarden stores its data.",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DATABASE_URL",
+ "Target": "DATABASE_URL",
+ "Default": "data/db.sqlite3",
+ "Mode": "",
+ "Description": "The database connection URL, e.g. postgres://USER:PASS@HOST:PORT/DATABASE",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "data/db.sqlite3"
+ },
+ {
+ "@attributes": {
+ "Name": "ADMIN_TOKEN",
+ "Target": "ADMIN_TOKEN",
+ "Default": "Token for the admin interface: https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DOMAIN",
+ "Target": "DOMAIN",
+ "Default": "",
+ "Mode": "",
+ "Description": "The domain must match the address from where you access the server.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "SIGNUPS_ALLOWED",
+ "Target": "SIGNUPS_ALLOWED",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Controls if new users can register.",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "ICON_REDIRECT_CODE",
+ "Target": "ICON_REDIRECT_CODE",
+ "Default": "302|301|307|308",
+ "Mode": "",
+ "Description": "The HTTP status code to use for redirects to an external icon service.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "302"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_ENABLED",
+ "Target": "PUSH_ENABLED",
+ "Default": "false|true",
+ "Mode": "",
+ "Description": "Enables push notifications. (requires key & ID from https://bitwarden.com/host)",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_INSTALLATION_ID",
+ "Target": "PUSH_INSTALLATION_ID",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_INSTALLATION_KEY",
+ "Target": "PUSH_INSTALLATION_KEY",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_RELAY_URI",
+ "Target": "PUSH_RELAY_URI",
+ "Default": "https://push.bitwarden.com|https://api.bitwarden.eu",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "https://push.bitwarden.com"
+ },
+ {
+ "@attributes": {
+ "Name": "PUSH_IDENTITY_URI",
+ "Target": "PUSH_IDENTITY_URI",
+ "Default": "https://identity.bitwarden.com|https://identity.bitwarden.eu",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "https://identity.bitwarden.com"
+ },
+ {
+ "@attributes": {
+ "Name": "ENABLE_WEBSOCKET",
+ "Target": "ENABLE_WEBSOCKET",
+ "Default": "true|false",
+ "Mode": "",
+ "Description": "Enable websocket notifications.",
+ "Type": "Variable",
+ "Display": "advanced",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "true"
+ }
+ ],
+ "Repo": "whallin's Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/whallinsRepository/whallin/vaultwarden.xml",
+ "CategoryList": [
+ "Productivity",
+ "Security",
+ "Other"
+ ],
+ "LastUpdateScan": 1725300416,
+ "FirstSeen": 1725300416
+ },
{
"Name": "wh-web-check",
"Overview": "All-in-one OSINT tool for analysing any website.",
@@ -299816,6 +301739,214 @@
"LastUpdate": 1686796069,
"FirstSeen": 1663842410
},
+ {
+ "Name": "eufy-security-ws",
+ "Repository": "bropat/eufy-security-ws",
+ "Registry": "https://hub.docker.com/r/bropat/eufy-security-ws/",
+ "Network": "bridge",
+ "Shell": "sh",
+ "Privileged": "false",
+ "Support": "https://hub.docker.com/r/bropat/eufy-security-ws/",
+ "Project": "https://github.com/bropat/eufy-security-ws",
+ "Overview": "A small server wrapper around eufy-security-client library to access it via a WebSocket\n\r\nExposes the client library over websocket\n\r\nImplements almost all functionality of the client library Including live streaming\nhttps://hub.docker.com/r/bropat/eufy-security-ws/",
+ "WebUI": "http://[IP]:[PORT:3000]",
+ "TemplateURL": "https://raw.githubusercontent.com/twist3dimages/unraid-templates/master/Eufy-Security-WS/eufy-security-ws.xml",
+ "Icon": "https://github.com/bropat/eufy-security-ws/raw/master/docs/_media/eufy-security-ws.png",
+ "Config": [
+ {
+ "@attributes": {
+ "Name": "Container Path 1",
+ "Target": "/data",
+ "Default": "",
+ "Mode": "rw",
+ "Description": "",
+ "Type": "Path",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "/mnt/user/appdata/eufy-security-ws"
+ },
+ {
+ "@attributes": {
+ "Name": "Container Port 1",
+ "Target": "3000",
+ "Default": "3000",
+ "Mode": "tcp",
+ "Description": "",
+ "Type": "Port",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "3000"
+ },
+ {
+ "@attributes": {
+ "Name": "USERNAME",
+ "Target": "USERNAME",
+ "Default": "",
+ "Mode": "",
+ "Description": "Eufy Account Username (required)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "PASSWORD",
+ "Target": "PASSWORD",
+ "Default": "",
+ "Mode": "",
+ "Description": "Eufy Account Password (required)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "true"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "COUNTRY",
+ "Target": "COUNTRY",
+ "Default": "US",
+ "Mode": "",
+ "Description": "ISO 3166-1 Alpha-2 country code (default: US)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "US"
+ },
+ {
+ "@attributes": {
+ "Name": "LANGUAGE",
+ "Target": "LANGUAGE",
+ "Default": "en",
+ "Mode": "",
+ "Description": "ISO 639 language code (default: en)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "true",
+ "Mask": "false"
+ },
+ "value": "en"
+ },
+ {
+ "@attributes": {
+ "Name": "TRUSTED_DEVICE_NAME",
+ "Target": "TRUSTED_DEVICE_NAME",
+ "Default": "eufyclient",
+ "Mode": "",
+ "Description": " Label of the trusted devices (viewable with 2fa activated in Eufy App; default: random device name)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "EVENT_DURATION_SECONDS",
+ "Target": "EVENT_DURATION_SECONDS",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Duration in seconds before an event is reset E.g. motion event (default: 10 sec.)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "P2P_CONNECTION_SETUP",
+ "Target": "P2P_CONNECTION_SETUP",
+ "Default": "",
+ "Mode": "",
+ "Description": "P2P connection setup (default: 0 ; Prefers local connection over cloud)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "0"
+ },
+ {
+ "@attributes": {
+ "Name": "POLLING_INTERVAL_MINUTES",
+ "Target": "POLLING_INTERVAL_MINUTES",
+ "Default": "10",
+ "Mode": "",
+ "Description": "Polling intervall for data refresh from Eufy Cloud (default: 10 min.)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "10"
+ },
+ {
+ "@attributes": {
+ "Name": "ACCEPT_INVITATIONS",
+ "Target": "ACCEPT_INVITATIONS",
+ "Default": "false",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "true"
+ },
+ {
+ "@attributes": {
+ "Name": "STATION_IP_ADDRESSES",
+ "Target": "STATION_IP_ADDRESSES",
+ "Default": "",
+ "Mode": "",
+ "Description": "Suggested IP addresses for a stations (default: unset; value format: station_serial1:ipaddress1;station_serial2:ipaddress2)",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": ""
+ },
+ {
+ "@attributes": {
+ "Name": "DEBUG",
+ "Target": "DEBUG",
+ "Default": "",
+ "Mode": "",
+ "Description": "",
+ "Type": "Variable",
+ "Display": "always",
+ "Required": "false",
+ "Mask": "false"
+ },
+ "value": "false"
+ }
+ ],
+ "Repo": "Exes' Repository",
+ "templatePath": "/tmp/GitHub/AppFeed/templates/ExesRepository/Eufy-Security-WS/eufy-security-ws.xml",
+ "CategoryList": [
+ "HomeAutomation"
+ ],
+ "downloads": 911047,
+ "stars": 8,
+ "LastUpdate": 1724774149,
+ "LastUpdateScan": 1725300420,
+ "FirstSeen": 1725300420
+ },
{
"Name": "mjpg-streamer",
"Repository": "registry.gitlab.com/luckyturtledev/docker-mjpg-streamer:latest",
diff --git a/duplicatedTemplates.json b/duplicatedTemplates.json
index d9cc9f6ae..cd1fac526 100755
--- a/duplicatedTemplates.json
+++ b/duplicatedTemplates.json
@@ -71,5 +71,10 @@
"datarhei/restreamer": true,
"ghcr.io/diced/zipline": true,
"lscr.io/linuxserver/obsidian": true,
- "twentycrm/twenty": true
+ "twentycrm/twenty": true,
+ "ghcr.io/borgmatic-collective/borgmatic": true,
+ "nocodb/nocodb": true,
+ "ghcr.io/zoeyvid/npmplus": true,
+ "ghcr.io/paperless-ngx/paperless-ngx": true,
+ "zoeyvid/npmplus": true
}
\ No newline at end of file
diff --git a/firstSeen.json b/firstSeen.json
index be60fa006..e38357b19 100755
--- a/firstSeen.json
+++ b/firstSeen.json
@@ -3492,5 +3492,14 @@
"mmartial/comfyui-nvidia-docker": 1725295567,
"rommapp/romm:latest": 1725295573,
"cardanocommunity/cardano-node": 1725295578,
- "flowiseai/flowise": 1725295583
+ "flowiseai/flowise": 1725295583,
+ "ghcr.io/c4illin/convertx:latest": 1725300383,
+ "ghcr.io/akashrajpurohit/git-sync:latest": 1725300388,
+ "ghcr.io/immich-app/immich-machine-learning:release": 1725300390,
+ "ghcr.io/immich-app/immich-server:release": 1725300395,
+ "matomo:apache": 1725300401,
+ "ghcr.io/maybe-finance/maybe:latest": 1725300406,
+ "ghcr.io/zoeyvid/npmplus:latest": 1725300411,
+ "ghcr.io/dani-garcia/vaultwarden:latest-alpine": 1725300416,
+ "bropat/eufy-security-ws": 1725300420
}
\ No newline at end of file
diff --git a/log.txt b/log.txt
index f5229d042..f71d31f56 100755
--- a/log.txt
+++ b/log.txt
@@ -6,6 +6,26 @@ Downloading Spotlighted apps Downloading https://raw.githubusercontent.com/Squid
Downloading Featured apps Downloading https://raw.githubusercontent.com/Squidly271/Community-Applications-Moderators/master/Featured.json attempt 1...
+Downloading martial's Repository: https://github.com/mmartial/unraid-templates -> /tmp/appFeed/templates/martialsRepository Attempt 1...https://github.com/mmartial/unraid-templates/archive/master.tar.gz Success!
+Processing /tmp/appFeed/templates/martialsRepository/templates/ca_profile.xml...FOUND PROFILE
+Processing /tmp/appFeed/templates/martialsRepository/templates/ComfyUI-Nvidia-Docker.xml...Success
+
+
+Downloading arcanesada's Repository: https://github.com/rommapp/unraid-templates -> /tmp/appFeed/templates/arcanesadasRepository Attempt 1...https://github.com/rommapp/unraid-templates/archive/master.tar.gz Success!
+Processing /tmp/appFeed/templates/arcanesadasRepository/ca_profile.xml...FOUND PROFILE
+Processing /tmp/appFeed/templates/arcanesadasRepository/rommapp/romm.xml...Success
+
+
+Downloading cobb's Repository: https://github.com/Cobbert/unraid-templates -> /tmp/appFeed/templates/cobbsRepository Attempt 1...https://github.com/Cobbert/unraid-templates/archive/master.tar.gz Success!
+Processing /tmp/appFeed/templates/cobbsRepository/cardano-node/Cardano-Node.xml...Success
+Processing /tmp/appFeed/templates/cobbsRepository/manjaro-mirror/manjaro-mirror.xml...Removed from CA
+
+
+Downloading Cyberschorsch's Repository: https://github.com/Cyberschorsch/unraid-templates -> /tmp/appFeed/templates/CyberschorschsRepository Attempt 1...https://github.com/Cyberschorsch/unraid-templates/archive/master.tar.gz Success!
+Processing /tmp/appFeed/templates/CyberschorschsRepository/ca_profile.xml...FOUND PROFILE
+Processing /tmp/appFeed/templates/CyberschorschsRepository/templates/flowise.xml...Success
+
+
Downloading Schaka's Repository: https://github.com/Schaka/unraid-templates -> /tmp/appFeed/templates/SchakasRepository Attempt 1...https://github.com/Schaka/unraid-templates/archive/master.tar.gz Success!
Processing /tmp/appFeed/templates/SchakasRepository/ca_profile.xml...FOUND PROFILE
Processing /tmp/appFeed/templates/SchakasRepository/janitorr.xml...Success
@@ -23,6 +43,7 @@ Processing /tmp/appFeed/templates/whallinsRepository/whallin/amp.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/apache-couchdb2.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/apache-couchdb3.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/apache-tika.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/borgmatic.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/ca_profile.xml...FOUND PROFILE
Processing /tmp/appFeed/templates/whallinsRepository/whallin/clickhouse24.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/deprecated/cloudflared.xml... ***DEPRECATED BY REPO PATH*** Success
@@ -34,24 +55,29 @@ Processing /tmp/appFeed/templates/whallinsRepository/whallin/dragonflydb.xml...S
Processing /tmp/appFeed/templates/whallinsRepository/whallin/earnapp.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/feishin.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/ghostfolio.xml...Removed from CA
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/git-sync.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/gotenberg8.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/deprecated/home-assistant.xml... ***DEPRECATED BY REPO PATH*** Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/deprecated/homepage.xml... ***DEPRECATED BY REPO PATH*** Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/honeygain.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/immich-machine-learning.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/immich-power-tools.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/immich-server.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/deprecated/jellyfin.xml... ***DEPRECATED BY REPO PATH*** Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/keydb.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/deprecated/linkwarden.xml... ***DEPRECATED BY REPO PATH*** Removed from CA
Processing /tmp/appFeed/templates/whallinsRepository/whallin/maloja.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/matomo.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/maybe.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/mitmproxy.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/multi-scrobbler.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/mysterium-node.xml...Success
-Processing /tmp/appFeed/templates/whallinsRepository/whallin/nocodb.xml...Failed
-Failed loading XML
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/nocodb.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/npmplus.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/obsidian.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/ontime.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/packetstream.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/paperless-ngx.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/pawns.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/pgvecto-rs14.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/pgvecto-rs15.xml...Success
@@ -70,6 +96,7 @@ Processing /tmp/appFeed/templates/whallinsRepository/whallin/twenty-worker.xml..
Processing /tmp/appFeed/templates/whallinsRepository/whallin/umami.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/valkey7.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/valkey8.xml...Success
+Processing /tmp/appFeed/templates/whallinsRepository/whallin/vaultwarden.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/web-check.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/zipline.xml...Success
Processing /tmp/appFeed/templates/whallinsRepository/whallin/_template.xml...Success
@@ -3374,15 +3401,6 @@ Downloading derneuere's Repository: https://github.com/LibrePhotos/librephotos-u
Processing /tmp/appFeed/templates/derneueresRepository/librephotos.xml...Success
-Downloading LTM's Repository: https://github.com/LilTrublMakr/ltm-unraid-templates -> /tmp/appFeed/templates/LTMsRepository Attempt 1...https://github.com/LilTrublMakr/ltm-unraid-templates/archive/master.tar.gz Success!
-Processing /tmp/appFeed/templates/LTMsRepository/ca_profile.xml...FOUND PROFILE
-Processing /tmp/appFeed/templates/LTMsRepository/templates/homepage.xml...Removed from CA
-Processing /tmp/appFeed/templates/LTMsRepository/templates/odoo.xml...Success
-Processing /tmp/appFeed/templates/LTMsRepository/templates/unimus.xml...Success
-Processing /tmp/appFeed/templates/LTMsRepository/templates/webhook.xml...Success
-Processing /tmp/appFeed/templates/LTMsRepository/templates/webhookd.xml...Success
-
-
Downloading mrslaw's Repository: https://github.com/MountainGod2/unraid-templates -> /tmp/appFeed/templates/mrslawsRepository Attempt 1...https://github.com/MountainGod2/unraid-templates/archive/master.tar.gz Success!
Processing /tmp/appFeed/templates/mrslawsRepository/ca_profile.xml...FOUND PROFILE
Processing /tmp/appFeed/templates/mrslawsRepository/chatpad/chatpad.xml...Success
@@ -3435,6 +3453,7 @@ Processing /tmp/appFeed/templates/roseatonisRepository/Foptimum/foptimum.xml...S
Downloading Exes' Repository: https://github.com/twist3dimages/unraid-templates -> /tmp/appFeed/templates/ExesRepository Attempt 1...https://github.com/twist3dimages/unraid-templates/archive/master.tar.gz Success!
Processing /tmp/appFeed/templates/ExesRepository/ClamAV/ClamAV.xml...Removed from CA
+Processing /tmp/appFeed/templates/ExesRepository/Eufy-Security-WS/eufy-security-ws.xml...Success
Processing /tmp/appFeed/templates/ExesRepository/MJPEG-Streamer/mjpeg-streamer.xml...Success
Processing /tmp/appFeed/templates/ExesRepository/Pushbullet_YTDL/pushbullet_ytdl.xml...Success
Processing /tmp/appFeed/templates/ExesRepository/Traefik-Cloudflare-Companion/traefik-cloudflare-companion.xml...Success
@@ -4371,11 +4390,43 @@ Processing /tmp/appFeed/templates/bendysRepository/sonarrtorss/sonarrtorss.xml..
Updating stats on containers
+borgmatic-collective/borgmatic
+ghcr.io/borgmatic-collective/borgmatic:latest Downloads: Stars: Base: unknown
+c4illin/convertx
+ghcr.io/c4illin/convertx:latest Downloads: Stars: Base: unknown
+Pulling ghcr.io/c4illin/convertx:latest
+akashrajpurohit/git-sync
+ghcr.io/akashrajpurohit/git-sync:latest Downloads: Stars: Base: unknown
+Pulling ghcr.io/akashrajpurohit/git-sync:latest
+Tagged - Can't determine last update
+immich-app/immich-machine-learning
+ghcr.io/immich-app/immich-machine-learning:release Downloads: Stars: Base: unknown
+Pulling ghcr.io/immich-app/immich-machine-learning:release
+Tagged - Can't determine last update
+immich-app/immich-server
+ghcr.io/immich-app/immich-server:release Downloads: Stars: Base: unknown
+Pulling ghcr.io/immich-app/immich-server:release
+Tagged - Can't determine last update
+matomo
+matomo:apache Downloads: 124565790 Stars: 337 Base: unknown
+Pulling matomo:apache
+maybe-finance/maybe
+ghcr.io/maybe-finance/maybe:latest Downloads: Stars: Base: unknown
+Pulling ghcr.io/maybe-finance/maybe:latest
+zoeyvid/npmplus
+ghcr.io/zoeyvid/npmplus:latest Downloads: 60417 Stars: 4 Base: unknown
+Pulling ghcr.io/zoeyvid/npmplus:latest
+paperless-ngx/paperless-ngx
+ghcr.io/paperless-ngx/paperless-ngx:latest Downloads: Stars: Base: unknown
+Tagged - Can't determine last update
+dani-garcia/vaultwarden
+ghcr.io/dani-garcia/vaultwarden:latest-alpine Downloads: Stars: Base: unknown
+Pulling ghcr.io/dani-garcia/vaultwarden:latest-alpine
+bropat/eufy-security-ws
+bropat/eufy-security-ws Downloads: 911047 Stars: 8 Base: unknown
+Pulling bropat/eufy-security-ws
Privileged: 104
Updating GitHub
-[master b5fdb8172] Update
- 6 files changed, 7 insertions(+), 9 deletions(-)
-fatal: could not read Username for 'https://github.com': No such device or address
diff --git a/old-applicationFeed-raw.json b/old-applicationFeed-raw.json
index 4976f8760..45610e1f0 100644
--- a/old-applicationFeed-raw.json
+++ b/old-applicationFeed-raw.json
@@ -80,8 +80,8 @@
"MediaApp-Photos"
],
"downloads": 170,
- "LastUpdate": 1724525347,
"LastUpdateScan": 1725295567,
+ "LastUpdate": 1724525347,
"FirstSeen": 1725295567
},
{
@@ -453,8 +453,8 @@
],
"downloads": 240341,
"stars": 4,
- "LastUpdate": 1725155326,
"LastUpdateScan": 1725295573,
+ "LastUpdate": 1725155326,
"FirstSeen": 1725295573
},
{
@@ -550,8 +550,8 @@
],
"downloads": 558442,
"stars": 16,
- "LastUpdate": 1723009755,
"LastUpdateScan": 1725295578,
+ "LastUpdate": 1723009755,
"FirstSeen": 1725295578
},
{
@@ -1024,8 +1024,8 @@
],
"downloads": 2648214,
"stars": 55,
- "LastUpdate": 1724872776,
"LastUpdateScan": 1725295583,
+ "LastUpdate": 1724872776,
"FirstSeen": 1725295583
},
{
@@ -27453,6 +27453,12 @@
}
],
"Repo": "linuxserver's Repository",
+ "RecommendedRaw": "9/1/2024",
+ "RecommendedDate": 1725163200,
+ "RecommendedReason": {
+ "en_US": "Powerful and easy to use eBook manager. A must have"
+ },
+ "RecommendedWho": "AlienTech42",
"ChangeLogPresent": true,
"templatePath": "/tmp/GitHub/AppFeed/templates/linuxserversRepository/unraid/calibre.xml",
"downloads": 48179555,
diff --git a/repoInfo.json b/repoInfo.json
index 18ec0ff29..f7b9ad7ba 100755
--- a/repoInfo.json
+++ b/repoInfo.json
@@ -93006,5 +93006,126 @@
"downloadtrend": null,
"trendsDate": null,
"LastUpdate": 1724872776
+ },
+ "ghcr.io/borgmatic-collective/borgmatic:latest": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300382,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/c4illin/convertx:latest": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300383,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/akashrajpurohit/git-sync:latest": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300388,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/immich-app/immich-machine-learning:release": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300390,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/immich-app/immich-server:release": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300395,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "matomo:apache": {
+ "Base": null,
+ "Downloads": 124565790,
+ "Stars": 337,
+ "Time": 1725300401,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": 1725083369
+ },
+ "ghcr.io/maybe-finance/maybe:latest": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300406,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/zoeyvid/npmplus:latest": {
+ "Base": null,
+ "Downloads": 60417,
+ "Stars": 4,
+ "Time": 1725300411,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": 1725056274
+ },
+ "ghcr.io/paperless-ngx/paperless-ngx:latest": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300416,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "ghcr.io/dani-garcia/vaultwarden:latest-alpine": {
+ "Base": null,
+ "Downloads": null,
+ "Stars": null,
+ "Time": 1725300416,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": null
+ },
+ "bropat/eufy-security-ws": {
+ "Base": null,
+ "Downloads": 911047,
+ "Stars": 8,
+ "Time": 1725300420,
+ "trending": null,
+ "trends": null,
+ "downloadtrend": null,
+ "trendsDate": null,
+ "LastUpdate": 1724774149
}
}
\ No newline at end of file
diff --git a/statistics.json b/statistics.json
index ba5c5c57b..3de36fff8 100755
--- a/statistics.json
+++ b/statistics.json
@@ -1,5 +1,5 @@
{
- "caFixed": 618,
+ "caFixed": 615,
"fixedTemplates": {
"cobb's Repository": {
"cobbert/manjaro-package-mirror": [
@@ -13,9 +13,6 @@
},
"whallin's Repository": {
"REPONAME": [
- "Fatal: Invalid repository found. Only lowercase is allowed",
- "Unknown category CACATEGORY:",
- "Fatal: Invalid repository found. Only lowercase is allowed",
"Fatal: Invalid repository found. Only lowercase is allowed",
"Unknown category CACATEGORY:"
]