From a3fcb3c78ead61e0af1d0f4b7a9f9fa55260982a Mon Sep 17 00:00:00 2001 From: SDGDen Date: Thu, 5 Mar 2026 08:04:34 +0100 Subject: [PATCH] fix owncloud commands --- deploy.sh | 61 ++-- scripts/owncloud-config.sh | 1 - .../config/www/logs/laravel-2026-03-05.log | 307 ------------------ stacks/npm/data/database.sqlite | Bin 118784 -> 118784 bytes 4 files changed, 37 insertions(+), 332 deletions(-) delete mode 100644 scripts/owncloud-config.sh delete mode 100644 stacks/dashboard/config/www/logs/laravel-2026-03-05.log diff --git a/deploy.sh b/deploy.sh index 4d9d0c6..5a672a1 100644 --- a/deploy.sh +++ b/deploy.sh @@ -140,9 +140,16 @@ get_country_from_timezone() { oc_installapp() { local appid="$1" - docker exec -u www-data owncloud_server /var/www/owncloud/occ market:install $appid + docker exec owncloud_server occ market:install $appid echo "$appid installed for owncloud" } + +pause_if_enabled() { + if [ "$SHOULD_PAUSE" = true ]; then + read -n 1 -s -r -p "Press any key to continue..." + echo # Move to a new line after keypress + fi +} # what this script needs to do: #formatting variables: @@ -161,6 +168,17 @@ echo read -rp "Timezone (e.g. Europe/Amsterdam): " timezone < /dev/tty read -rp "Domain (e.g. example.com): " domain < /dev/tty +# Prompt the user to set the pause behavior (defaults to true) +echo -e "${cyan}pause prompts${nc} will ask you to finish configuration for each application as the script goes." +echo "disabling these means you'll have to do this after the script finishes, but allows you to run the script unattended." +read -p "Enable pause prompts? [Y/n] " -n 1 -r +echo # Move to a new line +if [[ $REPLY =~ ^[Nn]$ ]]; then + SHOULD_PAUSE=false +else + SHOULD_PAUSE=true +fi + # Public IP (tries multiple services) publicip="$(curl -fsS https://api.ipify.org || curl -fsS https://ifconfig.me || echo "UNKNOWN")" @@ -175,7 +193,7 @@ echo "|@ |A |$publicip " echo "|* |CNAME |@ " echo "" echo -e "once you've done this, press any key to ${underline}continue${nc}" -read -n 1 -s -r -p "" +pause_if_enabled @@ -292,18 +310,18 @@ cd /opt/dockge docker compose up -d echo -e "${cyan}Dockge${nc} has been installed and launched. go to http://$localip:5001 and configure your username and password, then press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled # call replacements for nginx db replace_in_sqlite_db "/opt/stacks/npm/data/database.sqlite" "" $domain replace_in_sqlite_db "/opt/stacks/npm/data/database.sqlite" "" $localip -replace_in_sqlite_db "/opt/stacks/npm/data/database.sqlite" "" $adminpass -replace_in_sqlite_db "/opt/stacks/npm/data/database.sqlite" "" $adminemail +replace_in_sqlite_db "/opt/stacks/npm/data/database.sqlite" "" $publicip + cd /opt/stacks/npm docker compose up -d echo -e "${cyan}Nginx Proxy Manager${nc} has been installed and launched. go to http://$localip:81 and configure your username and password, then press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled echo "" echo -e "Multiple applications will now be installed in quick succession without continuous user prompting." echo -e "when each application is installed, you will see an output providing you the url to verify it is online" @@ -338,7 +356,6 @@ cd /opt/stacks/owncloud docker compose up -d echo "awaiting owncloud boot" sleep 120 -docker exec -u www-data owncloud_server /var/www/owncloud/occ maintenance:mode --on oc_installapp bookmarks oc_installapp calendar oc_installapp camerarawpreviews @@ -357,8 +374,8 @@ oc_installapp onlyoffice oc_installapp systemtags oc_installapp tasks -docker exec -u www-data owncloud_server /var/www/owncloud/occ config:app:set onlyoffice DocumentServerUrl --value="https://office.$domain/" -docker exec -u www-data owncloud_server /var/www/owncloud/occ config:app:set onlyoffice jwt_secret --value="$onlyofficeJWT" +docker exec owncloud_server occ config:app:set onlyoffice DocumentServerUrl --value="https://office.$domain/" +docker exec owncloud_server occ config:app:set onlyoffice jwt_secret --value="$onlyofficeJWT" echo -e "${cyan}owncloud${nc} has been launched from http://cloud.$domain, check if it is online and working, it may take a bit to launch. 502 error = still starting" cd /opt/stacks/site @@ -369,6 +386,10 @@ cd /opt/stacks/vaultwarden docker compose up -d echo -e "${cyan}vaultwarden${nc} has been launched from http://vault.$domain, verify it is online" +#pihole +cd /opt/stacks/pihole +docker compose up -d +echo -e "${cyan}pihole${nc} has been launched from http://dns.$domain, to use pihole as your DNS provider, set your DNS to $localip in your router for DHCP and on your device for any device with a static ip. Currently, the DNS is configured to use the joindns4.eu DNS, which *also* has built-in adblocking." cd /opt/stacks/downloader @@ -387,19 +408,20 @@ echo -e "${cyan}downloader${nc} has been launched from http://download.$domain, echo -e "${cyan}dozzle${nc} has been launched from http://dozzle.$domain, verify it is online, do not worry if the UI gives a time-out error, this is due to docker being busy while this script runs." echo -e "${cyan}Nginx Proxy Manager${nc} has been installed, configured and launched from http://proxy.$domain" echo -e "${cyan}Dockge${nc} has been installed, configured and launched from http://docker.$domain" +echo -e "${cyan}pihole${nc} has been launched from http://dns.$domain, to use pihole as your DNS provider, set your DNS to $localip in your router for DHCP and on your device for any device with a static ip. Currently, the DNS is configured to use the joindns4.eu DNS, which *also* has built-in adblocking." #bookstack cd /opt/stacks/bookstack docker compose up -d echo -e "${cyan}bookstack${nc} has been launched from http://docs.$domain, verify it is online (this may take a bit) and log in with email 'admin@admin.com' and password 'password', then reset this account to use $adminemail and your password. afterwards, press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled #browser cd /opt/stacks/browser docker compose up -d echo -e "${cyan}filebrowser${nc} has been launched from http://browser.$domain, head to dockge (http://docker.$domain), open the filebrowser stack and check the logs for the initial admin password. make sure to change this in filebrowser's config, then press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled #jellyfin cd /opt/stacks/jellyfin @@ -407,26 +429,21 @@ docker compose up -d mkdir /opt/stacks/jellyfin/media/shows mkdir /opt/stacks/jellyfin/media/movies echo -e "${cyan}jellyfin${nc} has launched from http://video.$domain, perform the initial setup and press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled #uptimekuma cd /opt/stacks/kuma docker compose up -d echo -e "${cyan}uptime kuma${nc} has been launched from http://status.$domain, perform the initial setup, choosing embedded mariaDB, then press any key to continue" -read -n 1 -s -r -p "" +pause_if_enabled -#pihole - -cd /opt/stacks/pihole -docker compose up -d -echo -e "${cyan}pihole${nc} has been launched from http://dns.$domain, to use pihole as your DNS provider, set your DNS to $localip in your router for DHCP and on your device for any device with a static ip. Currently, the DNS is configured to use the joindns4.eu DNS, which *also* has built-in adblocking." #dashboard replace_in_sqlite_db "/opt/stacks/dashboard/config/www/app.sqlite" "" $domain cd /opt/stacks/dashboard docker compose up -d echo -e "${cyan}dashboard${nc} has been launched from http://dash.$domain, verify it is online, check that its entries work and press any button to continue" -read -n 1 -s -r -p "" +pause_if_enabled #doesnt work yet @@ -435,8 +452,4 @@ echo "" echo "" echo -e "you can now access the dockge GUI interface at $localip:5001 and the proxy interface at $localip:81 once you start it from Dockge. be sure to forward ports 80, 443 and 51820 to $localip in your router settings" echo -e "to use ${green}pihole${nc} as your DNS provider, set your DNS to $localip in your router for DHCP and on your device for any device with a static ip. Currently, the DNS is configured to use the joindns4.eu DNS, which also has built-in adblocking." -echo "please reboot before further use" - - - --e \ No newline at end of file +echo "please reboot before further use" \ No newline at end of file diff --git a/scripts/owncloud-config.sh b/scripts/owncloud-config.sh deleted file mode 100644 index a0a0d31..0000000 --- a/scripts/owncloud-config.sh +++ /dev/null @@ -1 +0,0 @@ -# todo: write post-install owncloud config script using OCscript \ No newline at end of file diff --git a/stacks/dashboard/config/www/logs/laravel-2026-03-05.log b/stacks/dashboard/config/www/logs/laravel-2026-03-05.log deleted file mode 100644 index 2df875e..0000000 --- a/stacks/dashboard/config/www/logs/laravel-2026-03-05.log +++ /dev/null @@ -1,307 +0,0 @@ -[2026-03-05 02:13:25] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:13:25] local.DEBUG: Process Apps dispatched -[2026-03-05 02:13:25] local.DEBUG: Process Apps dispatched -[2026-03-05 02:52:38] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:38] local.DEBUG: Process Apps dispatched -[2026-03-05 02:52:40] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:40] local.DEBUG: Process Apps dispatched -[2026-03-05 02:52:42] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:42] local.DEBUG: Process Apps dispatched -[2026-03-05 02:52:46] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:46] local.DEBUG: Process Apps dispatched -[2026-03-05 02:52:46] local.DEBUG: Get app triggered for: ba05dd8e070851895ee6184eb9778cfa0753a490 -[2026-03-05 02:52:46] local.DEBUG: Download triggered for stdClass Object -( - [appid] => ba05dd8e070851895ee6184eb9778cfa0753a490 - [name] => FileBrowser - [website] => https://github.com/filebrowser/filebrowser - [license] => Apache License 2.0 - [description] => filebrowser provides a file managing interface within a specified directory and it can be used to upload, delete, preview, rename and edit your files. It allows the creation of multiple users and each user can have its own directory. It can be used as a standalone app or as a middleware. - [enhanced] => 1 - [tile_background] => dark - [icon] => filebrowser.svg - [sha] => b92328bdd28ebaf4103fa1a7ba22da49e3c263e7 - [class] => App\SupportedApps\FileBrowser\FileBrowser -) - -[2026-03-05 02:52:47] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:56] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:52:57] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:02] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:03] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:09] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:09] local.DEBUG: Get app triggered for: 668b5fcda851fe516fef14e82973beffe32f385a -[2026-03-05 02:53:09] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 668b5fcda851fe516fef14e82973beffe32f385a - [name] => ownCloud - [website] => https://owncloud.org - [license] => GNU Affero General Public License v3.0 or later - [description] => ownCloud is a free and open source file hosting service. It also supports extensions for online document editing, calendar and contact synchronization. It's a safe home for all your data. - [enhanced] => - [tile_background] => dark - [icon] => owncloud.png - [sha] => fa9bc697bec8367d9f4d4e98e9a34ea9c61d4710 - [class] => App\SupportedApps\ownCloud\ownCloud -) - -[2026-03-05 02:53:17] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:17] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:20] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:22] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:51] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:51] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:53] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:53:54] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:00] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:00] local.DEBUG: Get app triggered for: b89920409bdce40e08ba1023480b0546061cd577 -[2026-03-05 02:54:00] local.DEBUG: Download triggered for stdClass Object -( - [appid] => b89920409bdce40e08ba1023480b0546061cd577 - [name] => Pi-hole - [website] => https://pi-hole.net - [license] => European Union Public License 1.2 - [description] => Pi-hole is a Linux network-level advertisement and internet tracker blocking application which acts as a DNS sinkhole, intended for use on a private network. - [enhanced] => 1 - [tile_background] => dark - [icon] => pihole.svg - [sha] => 945fe7045036e17eff1d0c46be6280f207cef77a - [class] => App\SupportedApps\Pihole\Pihole -) - -[2026-03-05 02:54:00] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:11] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:11] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:13] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:14] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:18] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:18] local.DEBUG: Get app triggered for: 0bafb882c9d2c034ca5333367f8ccc90f4ae85e4 -[2026-03-05 02:54:18] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 0bafb882c9d2c034ca5333367f8ccc90f4ae85e4 - [name] => Dockge - [website] => https://github.com/louislam/dockge - [license] => MIT License - [description] => A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager. - [enhanced] => - [tile_background] => dark - [icon] => dockge.svg - [sha] => f4e77826a682041f4ab5e3276d3a7c1886d8095d - [class] => App\SupportedApps\Dockge\Dockge -) - -[2026-03-05 02:54:27] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:27] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:29] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:31] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:34] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:34] local.DEBUG: Get app triggered for: 348c49dd03dddd418929316668d2e67bf2d9ae88 -[2026-03-05 02:54:34] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 348c49dd03dddd418929316668d2e67bf2d9ae88 - [name] => Bookstack - [website] => https://www.bookstackapp.com - [license] => MIT License - [description] => BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information. - [enhanced] => 1 - [tile_background] => dark - [icon] => bookstack.svg - [sha] => fd57e5a47f09f6227b62b74428765dbce7f5813d - [class] => App\SupportedApps\Bookstack\Bookstack -) - -[2026-03-05 02:54:34] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:42] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:42] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:47] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:49] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:53] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:54:53] local.DEBUG: Get app triggered for: af7b37e2841d9150f6abd5a936b32a1f681d6bda -[2026-03-05 02:54:53] local.DEBUG: Download triggered for stdClass Object -( - [appid] => af7b37e2841d9150f6abd5a936b32a1f681d6bda - [name] => JDownloader - [website] => http://jdownloader.org - [license] => Creative Commons Attribution Non Commercial Share Alike 2.0 Generic - [description] => JDownloader is a free, open-source download management tool with a huge community of developers that makes downloading as easy and fast as it should be. - [enhanced] => - [tile_background] => dark - [icon] => jdownloader.png - [sha] => 32303a80935e2fbbecb1132e2358498ba876060b - [class] => App\SupportedApps\JDownloader\JDownloader -) - -[2026-03-05 02:55:00] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:17] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:17] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:20] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:22] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:24] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:24] local.DEBUG: Get app triggered for: 176d99d897dbd7c02b1a1db4142054f74a76aa47 -[2026-03-05 02:55:24] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 176d99d897dbd7c02b1a1db4142054f74a76aa47 - [name] => Dozzle - [website] => https://dozzle.dev - [license] => MIT License - [description] => Dozzle is a real-time log viewer for docker containers. - [enhanced] => - [tile_background] => dark - [icon] => dozzle.svg - [sha] => 46ca9ab4e1428db7e545d09261f487b08220d28d - [class] => App\SupportedApps\Dozzle\Dozzle -) - -[2026-03-05 02:55:32] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:32] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:36] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:37] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:42] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:42] local.DEBUG: Get app triggered for: fc4e407d69510b855b678aa4fba6083fbbfc5383 -[2026-03-05 02:55:42] local.DEBUG: Download triggered for stdClass Object -( - [appid] => fc4e407d69510b855b678aa4fba6083fbbfc5383 - [name] => OnlyOffice - [website] => https://www.onlyoffice.com - [license] => GNU Affero General Public License v3.0 or later - [description] => ONLYOFFICE online editors for text documents, spreadsheets, and presentations with access to pro features and connect them to the platform of your choice with ready-to-use connectors: https://www.onlyoffice.com/download.aspx#connectors - [enhanced] => - [tile_background] => light - [icon] => onlyoffice.png - [sha] => 4b8aa18f29760fab9ce5cd94976e86e464772a85 - [class] => App\SupportedApps\OnlyOffice\OnlyOffice -) - -[2026-03-05 02:55:42] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:48] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:48] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:51] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:52] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:55] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:55] local.DEBUG: Get app triggered for: cbfad988a16a9fbcc1812bc206afcc1f73dd36de -[2026-03-05 02:55:55] local.DEBUG: Download triggered for stdClass Object -( - [appid] => cbfad988a16a9fbcc1812bc206afcc1f73dd36de - [name] => Nginx Proxy Manager - [website] => https://nginxproxymanager.jc21.com - [license] => MIT License - [description] => This project comes as a pre-built docker image that enables you to easily forward to your websites running at home or otherwise, including free SSL, without having to know too much about Nginx or Letsencrypt. - [enhanced] => 1 - [tile_background] => light - [icon] => nginxproxymanager.png - [sha] => 0b8e03a7f9a833c0e644f401ee85926b8ba86c73 - [class] => App\SupportedApps\NginxProxyManager\NginxProxyManager -) - -[2026-03-05 02:55:55] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:55:55] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:02] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:02] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:06] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:07] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:10] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:10] local.DEBUG: Get app triggered for: 366c6646eedab83cc4b349f198424d2291cbfa76 -[2026-03-05 02:56:10] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 366c6646eedab83cc4b349f198424d2291cbfa76 - [name] => Uptime Kuma - [website] => https://uptime.kuma.pet - [license] => MIT License - [description] => It is a self-hosted monitoring tool like "Uptime Robot". - [enhanced] => 1 - [tile_background] => dark - [icon] => uptimekuma.svg - [sha] => 5179586b1259c3eba3fbf0c4712436110adb1885 - [class] => App\SupportedApps\UptimeKuma\UptimeKuma -) - -[2026-03-05 02:56:10] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:18] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:19] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:29] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:33] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:41] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:41] local.DEBUG: Get app triggered for: b5f16344632fdfe68391a2dc3816ee0edbb1813c -[2026-03-05 02:56:41] local.DEBUG: Download triggered for stdClass Object -( - [appid] => b5f16344632fdfe68391a2dc3816ee0edbb1813c - [name] => IT-Tools - [website] => https://it-tools.tech/ - [license] => GNU General Public License v3.0 only - [description] => Useful tools for developer and people working in IT. - [enhanced] => - [tile_background] => light - [icon] => ittools.png - [sha] => c42fe8dccaae8c320230a00f24771745edc8dc2d - [class] => App\SupportedApps\ITTools\ITTools -) - -[2026-03-05 02:56:41] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:47] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:48] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:50] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:51] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:56] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:56:56] local.DEBUG: Get app triggered for: ddf4f264320af1347ef54d424c60fae3b4fcc448 -[2026-03-05 02:56:56] local.DEBUG: Download triggered for stdClass Object -( - [appid] => ddf4f264320af1347ef54d424c60fae3b4fcc448 - [name] => Vaultwarden - [website] => https://github.com/dani-garcia/vaultwarden - [license] => GNU Affero General Public License v3.0 - [description] => Alternative implementation of the Bitwarden server API written in Rust and compatible with upstream Bitwarden clients*, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal. - [enhanced] => - [tile_background] => light - [icon] => vaultwarden.png - [sha] => fbc0ce92000160c6576cf4dc54b3859098f9faa8 - [class] => App\SupportedApps\Vaultwarden\Vaultwarden -) - -[2026-03-05 02:56:57] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:03] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:03] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:05] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:06] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:10] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:10] local.DEBUG: Get app triggered for: 3e0a7f109bd760b9474c78cb652e8c3e82669226 -[2026-03-05 02:57:10] local.DEBUG: Download triggered for stdClass Object -( - [appid] => 3e0a7f109bd760b9474c78cb652e8c3e82669226 - [name] => Jellyfin - [website] => https://jellyfin.github.io - [license] => GNU General Public License v2.0 only - [description] => Jellyfin is the Free Software Media System that puts you in control of managing and streaming your media. There are no strings attached, no premium licenses or features, and no hidden agendas. - [enhanced] => 1 - [tile_background] => dark - [icon] => jellyfin.svg - [sha] => 0261afdcd2000d2ed0fddf978d364b8ffcae961d - [class] => App\SupportedApps\Jellyfin\Jellyfin -) - -[2026-03-05 02:57:11] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:18] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:19] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:20] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:21] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:25] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:25] local.DEBUG: Get app triggered for: afef2217e82ee20638490bb102605f6e09789093 -[2026-03-05 02:57:25] local.DEBUG: Download triggered for stdClass Object -( - [appid] => afef2217e82ee20638490bb102605f6e09789093 - [name] => WireGuard - [website] => https://www.wireguard.com - [license] => CNRI Python Open Source GPL Compatible License Agreement - [description] => WireGuard® is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. Initially released for the Linux kernel, it is now cross-platform (Windows, macOS, BSD, iOS, Android) and widely deployable. It is currently under heavy development, but already it might be regarded as the most secure, easiest to use, and simplest VPN solution in the industry. - [enhanced] => - [tile_background] => dark - [icon] => wireguard.png - [sha] => 5c05f64749725c3179f109d21977d086101b3ee7 - [class] => App\SupportedApps\WireGuard\WireGuard -) - -[2026-03-05 02:57:31] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:32] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:34] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:35] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:49] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite -[2026-03-05 02:57:49] local.DEBUG: SQLite Database Path: /app/www/database/app.sqlite diff --git a/stacks/npm/data/database.sqlite b/stacks/npm/data/database.sqlite index ed5b917257437dc3ec63da300080b56fb8d7d102..48f961d26c1fd6eb1d1a9fd80563d1f9959eb205 100644 GIT binary patch delta 60 zcmV-C0K@-)pa+1U2ap>9e32YO0epdAwO|3JUkddA55Et34>k_9dyyPN0egX9wO|3JUkdgB55Et34>k_=vk?&H4hlX52mmuP Z2_F{`m$AM9CI&ogZ)0I>w=8b~)L`J*6;S{H