From 77defbbceb6b82fc87a0f0b33088667d05d1723b Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Mon, 4 Aug 2025 14:01:28 +0200 Subject: [PATCH] cleanup --- ct/ots.sh | 59 ------------------ ct/tududi.sh | 72 --------------------- frontend/public/json/ots.json | 40 ------------ frontend/public/json/tududi.json | 44 ------------- install/ots-install.sh | 103 ------------------------------- install/tududi-install.sh | 76 ----------------------- 6 files changed, 394 deletions(-) delete mode 100644 ct/ots.sh delete mode 100644 ct/tududi.sh delete mode 100644 frontend/public/json/ots.json delete mode 100644 frontend/public/json/tududi.json delete mode 100644 install/ots-install.sh delete mode 100644 install/tududi-install.sh diff --git a/ct/ots.sh b/ct/ots.sh deleted file mode 100644 index 9c711ae7..00000000 --- a/ct/ots.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env bash -source <(curl -s https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/build.func) -# Copyright (c) 2021-2025 community-scripts ORG -# Author: bvdberg01 -# License: MIT | https://github.com/community-scripts/ProxmoxVED/raw/main/LICENSE -# Source: https://github.com/Luzifer/ots - -APP="OTS" -var_tags="${var_tags:-secrets-sharer}" -var_cpu="${var_cpu:-1}" -var_ram="${var_ram:-512}" -var_disk="${var_disk:-3}" -var_os="${var_os:-debian}" -var_version="${var_version:-12}" -var_unprivileged="${var_unprivileged:-1}" - -header_info "$APP" -variables -color -catch_errors - -function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/ots ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - - RELEASE=$(curl -fsSL https://api.github.com/repos/Luzifer/ots/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - if [[ "${RELEASE}" != "$(cat ~/.ots 2>/dev/null)" ]] || [[ ! -f ~/.ots ]]; then - - msg_info "Stopping ${APP} Service" - systemctl stop ots - systemctl stop nginx - msg_ok "Stopped ${APP} Service" - - fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_amd64.tgz" - - msg_info "Stopping ${APP} Service" - systemctl start ots - systemctl start nginx - msg_ok "Stopped ${APP} Service" - - else - msg_ok "No update required. ${APP} is already at ${RELEASE}" - fi - exit -} - -start -build_container -description - -msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" -echo -e "${INFO}${YW} Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}https://${IP}${CL}" diff --git a/ct/tududi.sh b/ct/tududi.sh deleted file mode 100644 index f8407989..00000000 --- a/ct/tududi.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) -# Copyright (c) 2021-2025 community-scripts ORG -# Author: vhsdream -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://tududi.com - -APP="Tududi" -var_tags="${var_tags:-todo-app}" -var_cpu="${var_cpu:-2}" -var_ram="${var_ram:-2048}" -var_disk="${var_disk:-4}" -var_os="${var_os:-debian}" -var_version="${var_version:-12}" -var_unprivileged="${var_unprivileged:-1}" - -header_info "$APP" -variables -color -catch_errors - -function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/tududi ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - - RELEASE=$(curl -fsSL https://api.github.com/repos/chrisvel/tududi/releases/latest | yq '.tag_name' | sed 's/^v//') - if [[ "${RELEASE}" != "$(cat ~/.tududi 2>/dev/null)" ]] || [[ ! -f ~/.tududi ]]; then - msg_info "Stopping Service" - systemctl stop tududi - msg_ok "Stopped Service" - - msg_info "Remove and backup Files" - cp /opt/tududi/backend/.env /opt/tududi.env - rm -rf /opt/tududi/backend/dist - msg_ok "Backup and removed Files" - - fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" - - msg_info "Updating ${APP}" - cd /opt/tududi - $STD npm install - export NODE_ENV=production - $STD npm run frontend:build - mv ./dist ./backend - mv ./public/locales ./backend/dist - mv ./public/favicon.* ./backend/dist - mv /opt/tududi.env /opt/tududi/.env - msg_ok "Updated $APP" - - msg_info "Starting Service" - systemctl start tududi - msg_ok "Started Service" - msg_ok "Updated Successfully" - else - msg_ok "Already up to date" - fi - exit -} - -start -build_container -description - -msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" -echo -e "${INFO}${YW} Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3002${CL}" diff --git a/frontend/public/json/ots.json b/frontend/public/json/ots.json deleted file mode 100644 index 2bec84e8..00000000 --- a/frontend/public/json/ots.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "OTS", - "slug": "ots", - "categories": [ - 6 - ], - "date_created": "2025-07-28", - "type": "ct", - "updateable": true, - "privileged": false, - "interface_port": 443, - "documentation": "https://github.com/Luzifer/ots/wiki", - "config_path": "/opt/ots/.env", - "website": "https://github.com/Luzifer/ots", - "logo": null, - "description": "One-Time-Secret sharing platform with a symmetric 256bit AES encryption in the browser.", - "install_methods": [ - { - "type": "default", - "script": "ct/ots.sh", - "resources": { - "cpu": 1, - "ram": 512, - "hdd": 3, - "os": "Debian", - "version": "12" - } - } - ], - "default_credentials": { - "username": null, - "password": null - }, - "notes": [ - { - "text": "When it is in used external please use it behind reverse proxy or create your own certificates", - "type": "info" - } - ] -} diff --git a/frontend/public/json/tududi.json b/frontend/public/json/tududi.json deleted file mode 100644 index a82ec581..00000000 --- a/frontend/public/json/tududi.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "name": "Tududi", - "slug": "tududi", - "categories": [ - 12 - ], - "date_created": "2025-07-22", - "type": "ct", - "updateable": true, - "privileged": false, - "interface_port": 3002, - "documentation": null, - "config_path": "/opt/tududi/backend/.env", - "website": "https://tududi.com/", - "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tududi.webp", - "description": "Self-hosted task management with functional programming architecture, hierarchical organization, and multi-language support.", - "install_methods": [ - { - "type": "default", - "script": "ct/tududi.sh", - "resources": { - "cpu": 2, - "ram": 2048, - "hdd": 4, - "os": "Debian", - "version": "12" - } - } - ], - "default_credentials": { - "username": null, - "password": null - }, - "notes": [ - { - "text": "Create users like this: `cd /opt/tududi` => `npm run user:create `", - "type": "info" - }, - { - "text": "Database location: `/opt/tududi-db`. Uploads: `/opt/tududi-uploads`", - "type": "info" - } - ] -} diff --git a/install/ots-install.sh b/install/ots-install.sh deleted file mode 100644 index 526d64bd..00000000 --- a/install/ots-install.sh +++ /dev/null @@ -1,103 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2021-2025 community-scripts ORG -# Author: bvberg01 -# License: MIT | https://github.com/community-scripts/ProxmoxVED/raw/main/LICENSE -# Source: https://github.com/Luzifer/ots - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -msg_info "Installing Dependencies" -$STD apt-get install -y \ - redis-server \ - nginx \ - openssl -msg_ok "Installed Dependencies" - -fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_amd64.tgz" - -msg_info "Setup OTS" -cat </opt/ots/.env -LISTEN=127.0.0.1:3000 -REDIS_URL=redis://127.0.0.1:6379 -SECRET_EXPIRY=604800 -STORAGE_TYPE=redis -EOF -msg_ok "Setup OTS" - -msg_info "Generating Universal SSL Certificate" -mkdir -p /etc/ssl/ots -$STD openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \ - -keyout /etc/ssl/ots/key.pem \ - -out /etc/ssl/ots/cert.pem \ - -subj "/CN=ots" -msg_ok "Certificate Generated" - -msg_info "Setting up nginx" -cat </etc/nginx/sites-available/ots.conf -server { - listen 80; - listen [::]:80; - server_name ots; - return 301 https://\$host\$request_uri; -} -server { - listen 443 ssl; - listen [::]:443 ssl; - server_name ots; - - ssl_certificate /etc/ssl/ots/cert.pem; - ssl_certificate_key /etc/ssl/ots/key.pem; - - location / { - add_header X-Robots-Tag noindex; - - proxy_set_header Upgrade \$http_upgrade; - proxy_set_header Connection "Upgrade"; - proxy_set_header Host \$host; - proxy_set_header X-Real-IP \$remote_addr; - proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto \$scheme; - client_max_body_size 64M; - proxy_pass http://127.0.0.1:3000/; - } -} -EOF - -ln -s /etc/nginx/sites-available/ots.conf /etc/nginx/sites-enabled/ -rm -f /etc/nginx/sites-enabled/default -$STD systemctl reload nginx -msg_ok "Configured nginx" - -msg_info "Creating Services" -cat </etc/systemd/system/ots.service -[Unit] -Description=One-Time-Secret Service -After=network-online.target -Requires=network-online.target - -[Service] -EnvironmentFile=/opt/ots/.env -ExecStart=/opt/ots/ots -Restart=Always -RestartSecs=5 - -[Install] -WantedBy=multi-user.target -EOF -systemctl enable -q --now ots -msg_ok "Created Services" - -motd_ssh -customize - -msg_info "Cleaning up" -$STD apt-get -y autoremove -$STD apt-get -y autoclean -msg_ok "Cleaned" diff --git a/install/tududi-install.sh b/install/tududi-install.sh deleted file mode 100644 index d89d8c3d..00000000 --- a/install/tududi-install.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2025 Community Scripts ORG -# Author: vhsdream -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://tududi.com/ - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -msg_info "Installing Dependencies" -$STD apt-get install -y \ - sqlite3 \ - yq -msg_ok "Installed Dependencies" - -NODE_VERSION="20" setup_nodejs -fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" - -msg_info "Configuring Tududi" -cd /opt/tududi -$STD npm install -export NODE_ENV=production -$STD npm run frontend:build -mv ./dist ./backend -mv ./public/locales ./backend/dist -mv ./public/favicon.* ./backend/dist -msg_ok "Configured Tududi" - -msg_info "Creating env and database" -DB_LOCATION="/opt/tududi-db" -UPLOAD_DIR="/opt/tududi-uploads" -mkdir -p {"$DB_LOCATION","$UPLOAD_DIR"} -SECRET="$(openssl rand -hex 64)" -sed -e 's/^GOOGLE/# &/' \ - -e '/TUDUDI_SESSION/s/^# //' \ - -e '/NODE_ENV/s/^# //' \ - -e "s/your_session_secret_here/$SECRET/" \ - -e 's/development/production/' \ - -e "\$a\DB_FILE=$DB_LOCATION/production.sqlite3" \ - -e "\$a\TUDUDI_UPLOAD_PATH=$UPLOAD_DIR" \ - /opt/tududi/backend/.env.example >/opt/tududi/backend/.env -export DB_FILE="$DB_LOCATION/production.sqlite3" -$STD npm run db:init -msg_ok "Created env and database" - -msg_info "Creating service" -cat </etc/systemd/system/tududi.service -[Unit] -Description=Tududi Service -After=network.target - -[Service] -Type=simple -WorkingDirectory=/opt/tududi -EnvironmentFile=/opt/tududi/backend/.env -ExecStart=/usr/bin/npm run start - -[Install] -WantedBy=multi-user.target -EOF -systemctl enable -q --now tududi -msg_ok "Created service" - -motd_ssh -customize - -msg_info "Cleaning up" -$STD apt-get -y autoremove -$STD apt-get -y autoclean -msg_ok "Cleaned"