From 8c051b81862f3e6d4dccf8339c0dce7aa84d20da Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Tue, 1 Apr 2025 10:25:46 +0200 Subject: [PATCH] Replace wget with curl -fsSL, normalize downloads, and prep for IPv6 (#3455) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Initial Call, Switch from curl -s to curl -fsSL and wget to curl -fssL * more switches * switch vms * more curls * More curls * more * more * more changes * more * prepare ipv6 calls * change frontend to ipv6 * Formatting * Fromatting * Update gomft.sh * Update gomft-install.sh * Update ersatztv.sh * Update build.func --------- Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com> --- .github/CONTRIBUTOR_AND_GUIDES/ct/AppName.md | 2 +- .github/CONTRIBUTOR_AND_GUIDES/ct/AppName.sh | 6 +- .../install/AppName-install.sh | 10 +- .github/workflows/script-test.yml | 155 +++++++++--------- .github/workflows/script_format.yml | 29 ++-- .../workflows/scripts/app-test/pr-build.func | 2 +- .../scripts/app-test/pr-create-lxc.sh | 2 +- .../workflows/scripts/generate-app-headers.sh | 2 +- .github/workflows/scripts/update-json.sh | 2 +- .github/workflows/scripts/update_json_date.sh | 4 +- CHANGELOG.md | 2 +- ct/2fauth.sh | 8 +- ct/actualbudget.sh | 8 +- ct/adguard.sh | 4 +- ct/adventurelog.sh | 8 +- ct/agentdvr.sh | 2 +- ct/alpine-docker.sh | 4 +- ct/alpine-grafana.sh | 4 +- ct/alpine-it-tools.sh | 44 ++--- ct/alpine-nextcloud.sh | 12 +- ct/alpine-redis.sh | 2 +- ct/alpine-vaultwarden.sh | 4 +- ct/alpine-zigbee2mqtt.sh | 4 +- ct/alpine.sh | 4 +- ct/apache-cassandra.sh | 3 +- ct/apache-couchdb.sh | 4 +- ct/apache-guacamole.sh | 5 +- ct/apache-tika.sh | 6 +- ct/apache-tomcat.sh | 4 +- ct/apt-cacher-ng.sh | 4 +- ct/archivebox.sh | 4 +- ct/aria2.sh | 4 +- ct/audiobookshelf.sh | 4 +- ct/authelia.sh | 15 +- ct/authentik.sh | 8 +- ct/autobrr.sh | 4 +- ct/baikal.sh | 8 +- ct/barcode-buddy.sh | 8 +- ct/bazarr.sh | 11 +- ct/beszel.sh | 8 +- ct/blocky.sh | 17 +- ct/boltdiy.sh | 8 +- ct/bookstack.sh | 10 +- ct/bunkerweb.sh | 33 ++-- ct/bytestash.sh | 8 +- ct/caddy.sh | 4 +- ct/calibre-web.sh | 18 +- ct/casaos.sh | 2 +- ct/changedetection.sh | 4 +- ct/channels.sh | 2 +- ct/checkmk.sh | 10 +- ct/cloudflared.sh | 2 +- ct/cockpit.sh | 8 +- ct/commafeed.sh | 8 +- ct/cosmos.sh | 4 +- ct/crafty-controller.sh | 89 +++++----- ct/create_lxc.sh | 2 +- ct/cronicle.sh | 4 +- ct/cross-seed.sh | 6 +- ct/cryptpad.sh | 8 +- ct/daemonsync.sh | 2 +- ct/dashy.sh | 6 +- ct/debian.sh | 2 +- ct/deconz.sh | 2 +- ct/deluge.sh | 2 +- ct/docker.sh | 2 +- ct/dockge.sh | 2 +- ct/docmost.sh | 6 +- ct/dolibarr.sh | 4 +- ct/dotnetaspwebapi.sh | 4 +- ct/duplicati.sh | 8 +- ct/elementsynapse.sh | 6 +- ct/emby.sh | 6 +- ct/emqx.sh | 4 +- ct/ersatztv.sh | 23 ++- ct/esphome.sh | 2 +- ct/evcc.sh | 2 +- ct/excalidraw.sh | 8 +- ct/fenrus.sh | 4 +- ct/fhem.sh | 2 +- ct/fileflows.sh | 6 +- ct/firefly.sh | 16 +- ct/flaresolverr.sh | 8 +- ct/flowiseai.sh | 2 +- ct/fluid-calendar.sh | 8 +- ct/forgejo.sh | 6 +- ct/freshrss.sh | 4 +- ct/frigate.sh | 2 +- ct/ghost.sh | 4 +- ct/gitea.sh | 6 +- ct/glance.sh | 8 +- ct/glpi.sh | 6 +- ct/go2rtc.sh | 4 +- ct/gokapi.sh | 4 +- ct/gomft.sh | 4 +- ct/gotify.sh | 8 +- ct/grafana.sh | 2 +- ct/graylog.sh | 4 +- ct/grist.sh | 8 +- ct/grocy.sh | 4 +- ct/habitica.sh | 8 +- ct/headscale.sh | 8 +- ct/heimdall-dashboard.sh | 8 +- ct/hev-socks5-server.sh | 6 +- ct/hivemq.sh | 2 +- ct/hoarder.sh | 10 +- ct/homarr.sh | 42 ++--- ct/homeassistant-core.sh | 4 +- ct/homeassistant.sh | 4 +- ct/homebox.sh | 6 +- ct/homebridge.sh | 2 +- ct/homepage.sh | 6 +- ct/homer.sh | 4 +- ct/hyperhdr.sh | 2 +- ct/hyperion.sh | 2 +- ct/influxdb.sh | 4 +- ct/inspircd.sh | 6 +- ct/inventree.sh | 4 +- ct/iobroker.sh | 2 +- ct/iventoy.sh | 2 +- ct/jackett.sh | 6 +- ct/jellyfin.sh | 4 +- ct/jellyseerr.sh | 14 +- ct/jenkins.sh | 4 +- ct/jupyternotebook.sh | 6 +- ct/kavita.sh | 4 +- ct/keycloak.sh | 8 +- ct/kimai.sh | 8 +- ct/koillection.sh | 8 +- ct/kometa.sh | 8 +- ct/komga.sh | 8 +- ct/komodo.sh | 8 +- ct/kubo.sh | 8 +- ct/lazylibrarian.sh | 2 +- ct/lidarr.sh | 2 +- ct/linkwarden.sh | 12 +- ct/listmonk.sh | 6 +- ct/lldap.sh | 2 +- ct/lubelogger.sh | 8 +- ct/mafl.sh | 6 +- ct/magicmirror.sh | 8 +- ct/mariadb.sh | 2 +- ct/matterbridge.sh | 2 +- ct/mattermost.sh | 4 +- ct/mediamtx.sh | 2 +- ct/medusa.sh | 2 +- ct/memos.sh | 4 +- ct/meshcentral.sh | 2 +- ct/metube.sh | 2 +- ct/minio.sh | 8 +- ct/mongodb.sh | 4 +- ct/monica.sh | 8 +- ct/motioneye.sh | 2 +- ct/mqtt.sh | 2 +- ct/mylar3.sh | 6 +- ct/myspeed.sh | 8 +- ct/mysql.sh | 4 +- ct/n8n.sh | 2 +- ct/navidrome.sh | 8 +- ct/neo4j.sh | 2 +- ct/netbox.sh | 6 +- ct/nextcloudpi.sh | 2 +- ct/nextpvr.sh | 4 +- ct/nginxproxymanager.sh | 12 +- ct/nocodb.sh | 4 +- ct/node-red.sh | 2 +- ct/nodebb.sh | 6 +- ct/notifiarr.sh | 2 +- ct/npmplus.sh | 4 +- ct/ntfy.sh | 2 +- ct/nxwitness.sh | 10 +- ct/nzbget.sh | 2 +- ct/octoprint.sh | 2 +- ct/ollama.sh | 2 +- ct/omada.sh | 20 +-- ct/ombi.sh | 6 +- ct/omv.sh | 2 +- ct/onedev.sh | 6 +- ct/opengist.sh | 10 +- ct/openhab.sh | 4 +- ct/openobserve.sh | 4 +- ct/openwebui.sh | 4 +- ct/outline.sh | 8 +- ct/overseerr.sh | 2 +- ct/owncast.sh | 2 +- ct/pairdrop.sh | 2 +- ct/paperless-ai.sh | 8 +- ct/paperless-gpt.sh | 8 +- ct/paperless-ngx.sh | 8 +- ct/part-db.sh | 8 +- ct/paymenter.sh | 6 +- ct/peanut.sh | 6 +- ct/pelican-panel.sh | 8 +- ct/pelican-wings.sh | 6 +- ct/petio.sh | 6 +- ct/pf2etools.sh | 8 +- ct/photoprism.sh | 4 +- ct/phpipam.sh | 8 +- ct/pialert.sh | 6 +- ct/pihole.sh | 4 +- ct/pingvin.sh | 77 +++++---- ct/plant-it.sh | 10 +- ct/plex.sh | 4 +- ct/pocketbase.sh | 4 +- ct/pocketid.sh | 10 +- ct/podman-homeassistant.sh | 123 +++++++------- ct/podman.sh | 2 +- ct/postgresql.sh | 2 +- ct/privatebin.sh | 8 +- ct/projectsend.sh | 8 +- ct/prometheus-alertmanager.sh | 6 +- ct/prometheus-paperless-ngx-exporter.sh | 6 +- ct/prometheus-pve-exporter.sh | 2 +- ct/prometheus.sh | 6 +- ct/prowlarr.sh | 2 +- ct/proxmox-backup-server.sh | 17 +- ct/proxmox-datacenter-manager.sh | 17 +- ct/proxmox-mail-gateway.sh | 9 +- ct/ps5-mqtt.sh | 10 +- ct/pterodactyl-panel.sh | 8 +- ct/pterodactyl-wings.sh | 8 +- ct/qbittorrent.sh | 6 +- ct/rabbitmq.sh | 2 +- ct/radarr.sh | 2 +- ct/radicale.sh | 2 +- ct/rdtclient.sh | 4 +- ct/readarr.sh | 2 +- ct/readeck.sh | 6 +- ct/recyclarr.sh | 4 +- ct/redis.sh | 2 +- ct/revealjs.sh | 10 +- ct/rtsptoweb.sh | 2 +- ct/runtipi.sh | 2 +- ct/rustdeskserver.sh | 12 +- ct/sabnzbd.sh | 6 +- ct/seafile.sh | 2 +- ct/searxng.sh | 6 +- ct/seelf.sh | 8 +- ct/semaphore.sh | 6 +- ct/sftpgo.sh | 2 +- ct/shinobi.sh | 2 +- ct/silverbullet.sh | 13 +- ct/smokeping.sh | 2 +- ct/snipeit.sh | 12 +- ct/sonarr.sh | 4 +- ct/spoolman.sh | 10 +- ct/sqlserver2022.sh | 4 +- ct/stirling-pdf.sh | 6 +- ct/suwayomiserver.sh | 10 +- ct/syncthing.sh | 2 +- ct/tandoor.sh | 4 +- ct/tasmoadmin.sh | 2 +- ct/tasmocompiler.sh | 10 +- ct/tautulli.sh | 2 +- ct/tdarr.sh | 2 +- ct/technitiumdns.sh | 4 +- ct/teddycloud.sh | 13 +- ct/the-lounge.sh | 6 +- ct/threadfin.sh | 4 +- ct/tianji.sh | 14 +- ct/traccar.sh | 2 +- ct/traefik.sh | 6 +- ct/transmission.sh | 2 +- ct/trilium.sh | 26 +-- ct/typesense.sh | 6 +- ct/ubuntu.sh | 2 +- ct/umami.sh | 2 +- ct/umbrel.sh | 2 +- ct/unbound.sh | 2 +- ct/unifi.sh | 4 +- ct/unmanic.sh | 2 +- ct/uptimekuma.sh | 6 +- ct/urbackupserver.sh | 4 +- ct/vaultwarden.sh | 8 +- ct/victoriametrics.sh | 22 +-- ct/vikunja.sh | 8 +- ct/wallos.sh | 6 +- ct/wastebin.sh | 8 +- ct/watcharr.sh | 8 +- ct/watchyourlan.sh | 6 +- ct/wavelog.sh | 6 +- ct/wazuh.sh | 4 +- ct/web-check.sh | 4 +- ct/wger.sh | 8 +- ct/whisparr.sh | 2 +- ct/whoogle.sh | 2 +- ct/wikijs.sh | 6 +- ct/wireguard.sh | 4 +- ct/wordpress.sh | 4 +- ct/yt-dlp-webui.sh | 10 +- ct/yunohost.sh | 2 +- ct/zabbix.sh | 6 +- ct/zammad.sh | 2 +- ct/zerotier-one.sh | 5 +- ct/zigbee2mqtt.sh | 40 ++--- ct/zipline.sh | 10 +- ct/zitadel.sh | 10 +- ct/zoraxy.sh | 6 +- ct/zwave-js-ui.sh | 6 +- frontend/public/json/cron-update-lxcs.json | 2 +- .../ScriptItems/InstallCommand.tsx | 148 +++++++++-------- install/2fauth-install.sh | 4 +- install/actualbudget-install.sh | 4 +- install/adventurelog-install.sh | 4 +- install/agentdvr-install.sh | 4 +- install/alpine-docker-install.sh | 4 +- install/alpine-it-tools-install.sh | 2 +- install/apache-cassandra-install.sh | 4 +- install/apache-guacamole-install.sh | 16 +- install/apache-tika-install.sh | 4 +- install/apache-tomcat-install.sh | 6 +- install/aria2-install.sh | 2 +- install/authelia-install.sh | 4 +- install/authentik-install.sh | 20 +-- install/autobrr-install.sh | 2 +- install/baikal-install.sh | 4 +- install/barcode-buddy-install.sh | 4 +- install/bazarr-install.sh | 2 +- install/beszel-install.sh | 2 +- install/blocky-install.sh | 4 +- install/boltdiy-install.sh | 4 +- install/bookstack-install.sh | 4 +- install/bunkerweb-install.sh | 4 +- install/bytestash-install.sh | 4 +- install/caddy-install.sh | 10 +- install/calibre-web-install.sh | 2 +- install/checkmk-install.sh | 2 +- install/commafeed-install.sh | 8 +- install/cosmos-install.sh | 6 +- install/crafty-controller-install.sh | 6 +- install/cronicle-install.sh | 2 +- install/cryptpad-install.sh | 4 +- install/daemonsync-install.sh | 2 +- install/dashy-install.sh | 4 +- install/deconz-install.sh | 2 +- install/docker-install.sh | 4 +- install/dockge-install.sh | 13 +- install/docmost-install.sh | 4 +- install/dolibarr-install.sh | 6 +- install/duplicati-install.sh | 4 +- install/elementsynapse-install.sh | 2 +- install/emby-install.sh | 4 +- install/ersatztv-install.sh | 6 +- install/excalidraw-install.sh | 4 +- install/fenrus-install.sh | 2 +- install/fhem-install.sh | 2 +- install/fileflows-install.sh | 2 +- install/firefly-install.sh | 6 +- install/flaresolverr-install.sh | 6 +- install/flowiseai-install.sh | 2 +- install/fluid-calendar-install.sh | 4 +- install/forgejo-install.sh | 4 +- install/freshrss-install.sh | 4 +- install/frigate-install.sh | 18 +- install/gitea-install.sh | 4 +- install/glance-install.sh | 4 +- install/glpi-install.sh | 4 +- install/go2rtc-install.sh | 2 +- install/gokapi-install.sh | 4 +- install/gotify-install.sh | 4 +- install/grafana-install.sh | 2 +- install/graylog-install.sh | 2 +- install/grist-install.sh | 4 +- install/grocy-install.sh | 6 +- install/habitica-install.sh | 6 +- install/headscale-install.sh | 4 +- install/heimdall-dashboard-install.sh | 6 +- install/hev-socks5-server-install.sh | 2 +- install/hivemq-install.sh | 6 +- install/hoarder-install.sh | 12 +- install/homarr-install.sh | 4 +- install/homeassistant-install.sh | 4 +- install/homebox-install.sh | 4 +- install/homebridge-install.sh | 2 +- install/homepage-install.sh | 2 +- install/homer-install.sh | 2 +- install/hyperion-install.sh | 2 +- install/influxdb-install.sh | 4 +- install/inspircd-install.sh | 4 +- install/inventree-install.sh | 2 +- install/iventoy-install.sh | 4 +- install/jackett-install.sh | 4 +- install/jenkins-install.sh | 2 +- install/kavita-install.sh | 2 +- install/keycloak-install.sh | 6 +- install/kimai-install.sh | 6 +- install/koillection-install.sh | 6 +- install/kometa-install.sh | 4 +- install/komga-install.sh | 4 +- install/komodo-install.sh | 4 +- install/kubo-install.sh | 4 +- install/lidarr-install.sh | 2 +- install/linkwarden-install.sh | 6 +- install/listmonk-install.sh | 4 +- install/lubelogger-install.sh | 4 +- install/mafl-install.sh | 6 +- install/magicmirror-install.sh | 4 +- install/mariadb-install.sh | 2 +- install/mattermost-install.sh | 4 +- install/mediamtx-install.sh | 4 +- install/memos-install.sh | 6 +- install/minio-install.sh | 4 +- install/mongodb-install.sh | 2 +- install/monica-install.sh | 4 +- install/motioneye-install.sh | 4 +- install/mylar3-install.sh | 4 +- install/myspeed-install.sh | 4 +- install/mysql-install.sh | 2 +- install/navidrome-install.sh | 4 +- install/neo4j-install.sh | 2 +- install/netbox-install.sh | 4 +- install/nextpvr-install.sh | 2 +- install/nginxproxymanager-install.sh | 8 +- install/nocodb-install.sh | 2 +- install/nodebb-install.sh | 4 +- install/notifiarr-install.sh | 2 +- install/npmplus-install.sh | 6 +- install/nxwitness-install.sh | 6 +- install/ollama-install.sh | 6 +- install/omada-install.sh | 12 +- install/ombi-install.sh | 4 +- install/omv-install.sh | 2 +- install/onedev-install.sh | 2 +- install/opengist-install.sh | 4 +- install/openhab-install.sh | 4 +- install/openobserve-install.sh | 2 +- install/outline-install.sh | 4 +- install/owncast-install.sh | 2 +- install/paperless-ai-install.sh | 4 +- install/paperless-gpt-install.sh | 10 +- install/paperless-ngx-install.sh | 8 +- install/part-db-install.sh | 4 +- install/paymenter-install.sh | 6 +- install/peanut-install.sh | 4 +- install/pelican-panel-install.sh | 6 +- install/pelican-wings-install.sh | 6 +- install/petio-install.sh | 4 +- install/pf2etools-install.sh | 4 +- install/photoprism-install.sh | 6 +- install/phpipam-install.sh | 4 +- install/pialert-install.sh | 2 +- install/pihole-install.sh | 6 +- install/pingvin-install.sh | 8 +- install/plant-it-install.sh | 8 +- install/plex-install.sh | 2 +- install/pocketbase-install.sh | 4 +- install/pocketid-install.sh | 10 +- install/podman-homeassistant-install.sh | 2 +- install/podman-install.sh | 2 +- install/postgresql-install.sh | 2 +- install/privatebin-install.sh | 4 +- install/projectsend-install.sh | 4 +- install/prometheus-alertmanager-install.sh | 4 +- install/prometheus-install.sh | 4 +- ...ometheus-paperless-ngx-exporter-install.sh | 4 +- install/prowlarr-install.sh | 2 +- install/proxmox-backup-server-install.sh | 2 +- install/proxmox-mail-gateway-install.sh | 2 +- install/ps5-mqtt-install.sh | 4 +- install/pterodactyl-panel-install.sh | 6 +- install/pterodactyl-wings-install.sh | 6 +- install/qbittorrent-install.sh | 2 +- install/rabbitmq-install.sh | 6 +- install/radarr-install.sh | 4 +- install/radicale-install.sh | 10 +- install/rdtclient-install.sh | 6 +- install/readarr-install.sh | 2 +- install/readeck-install.sh | 4 +- install/recyclarr-install.sh | 2 +- install/redis-install.sh | 2 +- install/revealjs-install.sh | 4 +- install/rtsptoweb-install.sh | 6 +- install/runtipi-install.sh | 2 +- install/rustdeskserver-install.sh | 10 +- install/sabnzbd-install.sh | 2 +- install/seafile-install.sh | 2 +- install/seelf-install.sh | 10 +- install/semaphore-install.sh | 8 +- install/sftpgo-install.sh | 8 +- install/silverbullet-install.sh | 6 +- install/snipeit-install.sh | 4 +- install/sonarr-install.sh | 2 +- install/spoolman-install.sh | 6 +- install/sqlserver2022-install.sh | 8 +- install/stirling-pdf-install.sh | 8 +- install/suwayomiserver-install.sh | 6 +- install/syncthing-install.sh | 2 +- install/tandoor-install.sh | 2 +- install/tasmoadmin-install.sh | 2 +- install/tasmocompiler-install.sh | 4 +- install/tdarr-install.sh | 4 +- install/technitiumdns-install.sh | 2 +- install/teddycloud-install.sh | 4 +- install/the-lounge-install.sh | 4 +- install/threadfin-install.sh | 2 +- install/tianji-install.sh | 4 +- install/traccar-install.sh | 4 +- install/traefik-install.sh | 4 +- install/trilium-install.sh | 4 +- install/typesense-install.sh | 4 +- install/umbrel-install.sh | 4 +- install/unifi-install.sh | 10 +- install/vaultwarden-install.sh | 6 +- install/victoriametrics-install.sh | 8 +- install/vikunja-install.sh | 4 +- install/wallos-install.sh | 4 +- install/wastebin-install.sh | 4 +- install/watcharr-install.sh | 10 +- install/watchyourlan-install.sh | 4 +- install/wavelog-install.sh | 4 +- install/wazuh-install.sh | 2 +- install/web-check-install.sh | 2 +- install/wger-install.sh | 4 +- install/whisparr-install.sh | 2 +- install/wikijs-install.sh | 4 +- install/wordpress-install.sh | 2 +- install/yt-dlp-webui-install.sh | 14 +- install/yunohost-install.sh | 4 +- install/zabbix-install.sh | 6 +- install/zerotier-one-install.sh | 4 +- install/zigbee2mqtt-install.sh | 4 +- install/zipline-install.sh | 4 +- install/zitadel-install.sh | 4 +- install/zoraxy-install.sh | 4 +- install/zwave-js-ui-install.sh | 4 +- misc/add-lxc-iptag.sh | 16 +- misc/add-netbird-lxc.sh | 6 +- misc/add-tailscale-lxc.sh | 6 +- misc/alpine-install.func | 2 +- misc/api.func | 6 +- misc/build.func | 16 +- misc/clean-lxcs.sh | 4 +- misc/clean-orphaned-lvm.sh | 16 +- misc/code-server.sh | 12 +- misc/container-restore-from-backup.sh | 5 +- misc/copy-data/README.md | 18 +- ...iner-copy-data-home-assistant-container.sh | 7 +- ...container-copy-data-home-assistant-core.sh | 7 +- ...ntainer-copy-data-podman-home-assistant.sh | 7 +- ...core-copy-data-home-assistant-container.sh | 7 +- ...tant-core-copy-data-home-assistant-core.sh | 7 +- misc/copy-data/plex-copy-data-plex.sh | 7 +- ...tant-copy-data-home-assistant-container.sh | 7 +- misc/copy-data/z2m-copy-data-z2m.sh | 7 +- .../zwavejs2mqtt-copy-data-zwavejsui.sh | 7 +- misc/core-restore-from-backup.sh | 5 +- misc/cron-update-lxcs.sh | 4 +- misc/crowdsec.sh | 7 +- misc/filebrowser.sh | 15 +- misc/frigate-support.sh | 18 +- misc/fstrim.sh | 24 +-- misc/glances.sh | 68 ++++---- misc/hw-acceleration.sh | 12 +- misc/install.func | 4 +- misc/kernel-clean.sh | 2 +- misc/kernel-pin.sh | 4 +- misc/lxc-delete.sh | 14 +- misc/microcode.sh | 46 +++++- misc/monitor-all.sh | 68 ++++---- misc/netdata.sh | 40 ++--- misc/olivetin.sh | 18 +- misc/pbs3-upgrade.sh | 6 +- misc/pbs_microcode.sh | 20 +-- misc/post-pbs-install.sh | 10 +- misc/post-pmg-install.sh | 5 +- misc/post-pve-install.sh | 39 +++-- misc/pve8-upgrade.sh | 43 ++--- misc/pyenv.sh | 95 +++++------ misc/scaling-governor.sh | 45 ++--- misc/update-lxcs.sh | 34 ++-- misc/webmin.sh | 4 +- turnkey/turnkey.sh | 2 +- vm/archlinux-vm.sh | 23 ++- vm/debian-vm.sh | 22 +-- vm/docker-vm.sh | 24 +-- vm/haos-vm.sh | 36 ++-- vm/mikrotik-routeros.sh | 7 +- vm/nextcloud-vm.sh | 8 +- vm/openwrt.sh | 10 +- vm/opnsense-vm.sh | 147 ++++++++--------- vm/owncloud-vm.sh | 8 +- vm/pimox-haos-vm.sh | 20 +-- vm/ubuntu2204-vm.sh | 22 +-- vm/ubuntu2404-vm.sh | 24 +-- vm/ubuntu2410-vm.sh | 22 +-- 585 files changed, 2364 insertions(+), 2258 deletions(-) diff --git a/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.md b/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.md index e3a2b0bc0..f9521f9be 100644 --- a/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.md +++ b/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.md @@ -52,7 +52,7 @@ source <(curl -s https://raw.githubusercontent.com/[USER]/[REPO]/refs/heads/[BRA Final script: ```bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) ``` > [!CAUTION] diff --git a/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.sh b/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.sh index b61262bb1..066a1c5f9 100644 --- a/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.sh +++ b/.github/CONTRIBUTOR_AND_GUIDES/ct/AppName.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: [YourUserName] # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -9,7 +9,7 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m APP="[APP_NAME]" # Name of the app (e.g. Google, Adventurelog, Apache-Guacamole" var_tags="[TAGS]" -# Tags for Proxmox VE, maximum 2 pcs., no spaces allowed, separated by a semicolon ; (e.g. database | adblock;dhcp) +# Tags for Proxmox VE, maximum 2 pcs., no spaces allowed, separated by a semicolon ; (e.g. database | adblock;dhcp) var_cpu="[CPU]" # Number of cores (1-X) (e.g. 4) - default are 2 var_ram="[RAM]" @@ -83,4 +83,4 @@ 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}:[PORT]${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:[PORT]${CL}" \ No newline at end of file diff --git a/.github/CONTRIBUTOR_AND_GUIDES/install/AppName-install.sh b/.github/CONTRIBUTOR_AND_GUIDES/install/AppName-install.sh index ea2f25a56..2eb435b16 100644 --- a/.github/CONTRIBUTOR_AND_GUIDES/install/AppName-install.sh +++ b/.github/CONTRIBUTOR_AND_GUIDES/install/AppName-install.sh @@ -42,10 +42,10 @@ msg_ok "Set up Database" # Setup App msg_info "Setup ${APPLICATION}" -RELEASE=$(curl -s https://api.github.com/repos/[REPO]/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/[REPO]/archive/refs/tags/${RELEASE}.zip" -unzip -q ${RELEASE}.zip -mv ${APPLICATION}-${RELEASE}/ /opt/${APPLICATION} +RELEASE=$(curl -fsSL https://api.github.com/repos/[REPO]/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL -o "${RELEASE}.zip" "https://github.com/[REPO]/archive/refs/tags/${RELEASE}.zip" +unzip -q "${RELEASE}.zip" +mv "${APPLICATION}-${RELEASE}/" "/opt/${APPLICATION}" # # # @@ -77,4 +77,4 @@ msg_info "Cleaning up" rm -f ${RELEASE}.zip $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/.github/workflows/script-test.yml b/.github/workflows/script-test.yml index 5c8803907..64e5b31cc 100644 --- a/.github/workflows/script-test.yml +++ b/.github/workflows/script-test.yml @@ -1,29 +1,29 @@ name: Run Scripts on PVE Node for testing permissions: - pull-requests: write + pull-requests: write on: pull_request_target: branches: - main paths: - - 'install/**.sh' - - 'ct/**.sh' + - "install/**.sh" + - "ct/**.sh" jobs: run-install-script: runs-on: pvenode - steps: + steps: - name: Checkout PR branch uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.head.ref }} repository: ${{ github.event.pull_request.head.repo.full_name }} - fetch-depth: 0 - + fetch-depth: 0 + - name: Add Git safe directory run: | git config --global --add safe.directory /__w/ProxmoxVE/ProxmoxVE - + - name: Set up GH_TOKEN env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -38,7 +38,6 @@ jobs: echo "SCRIPT=$CHANGED_FILES" >> $GITHUB_ENV env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Get scripts id: check-install-script @@ -57,81 +56,81 @@ jobs: ALL_FILES=$(echo "${ALL_FILES[@]}" | xargs) echo "$ALL_FILES" echo "ALL_FILES=$ALL_FILES" >> $GITHUB_ENV - + - name: Run scripts id: run-install continue-on-error: true run: | - set +e - #run for each files in /ct - for FILE in ${{ env.ALL_FILES }}; do - STRIPPED_NAME=$(basename "$FILE" | sed 's/-install//' | sed 's/\.sh$//') - echo "Running Test for: $STRIPPED_NAME" - if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "$FILE"; then - echo "The script contains an interactive prompt. Skipping execution." + set +e + #run for each files in /ct + for FILE in ${{ env.ALL_FILES }}; do + STRIPPED_NAME=$(basename "$FILE" | sed 's/-install//' | sed 's/\.sh$//') + echo "Running Test for: $STRIPPED_NAME" + if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "$FILE"; then + echo "The script contains an interactive prompt. Skipping execution." + continue + fi + if [[ $FILE =~ ^install/.*-install\.sh$ ]]; then + CT_SCRIPT="ct/$STRIPPED_NAME.sh" + if [[ ! -f $CT_SCRIPT ]]; then + echo "No CT script found for $STRIPPED_NAME" + ERROR_MSG="No CT script found for $FILE" + echo "$ERROR_MSG" > result_$STRIPPED_NAME.log continue fi - if [[ $FILE =~ ^install/.*-install\.sh$ ]]; then - CT_SCRIPT="ct/$STRIPPED_NAME.sh" - if [[ ! -f $CT_SCRIPT ]]; then - echo "No CT script found for $STRIPPED_NAME" - ERROR_MSG="No CT script found for $FILE" - echo "$ERROR_MSG" > result_$STRIPPED_NAME.log + if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "install/$STRIPPED_NAME-install.sh"; then + echo "The script contains an interactive prompt. Skipping execution." continue fi - if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "install/$STRIPPED_NAME-install.sh"; then - echo "The script contains an interactive prompt. Skipping execution." - continue - fi - echo "Found CT script for $STRIPPED_NAME" - chmod +x "$CT_SCRIPT" - RUNNING_FILE=$CT_SCRIPT - elif [[ $FILE =~ ^ct/.*\.sh$ ]]; then - INSTALL_SCRIPT="install/$STRIPPED_NAME-install.sh" - if [[ ! -f $INSTALL_SCRIPT ]]; then - echo "No install script found for $STRIPPED_NAME" - ERROR_MSG="No install script found for $FILE" - echo "$ERROR_MSG" > result_$STRIPPED_NAME.log - continue - fi - echo "Found install script for $STRIPPED_NAME" - chmod +x "$INSTALL_SCRIPT" - RUNNING_FILE=$FILE - if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "ct/$STRIPPED_NAME.sh"; then - echo "The script contains an interactive prompt. Skipping execution." - continue - fi - fi - git remote add community-scripts https://github.com/community-scripts/ProxmoxVE.git - git fetch community-scripts - rm -f .github/workflows/scripts/app-test/pr-build.func || true - rm -f .github/workflows/scripts/app-test/pr-install.func || true - rm -f .github/workflows/scripts/app-test/pr-alpine-install.func || true - rm -f .github/workflows/scripts/app-test/pr-create-lxc.sh || true - git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-build.func - git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-install.func - git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-alpine-install.func - git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-create-lxc.sh - chmod +x $RUNNING_FILE - chmod +x .github/workflows/scripts/app-test/pr-create-lxc.sh - chmod +x .github/workflows/scripts/app-test/pr-install.func - chmod +x .github/workflows/scripts/app-test/pr-alpine-install.func - chmod +x .github/workflows/scripts/app-test/pr-build.func - sed -i 's|source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)|source .github/workflows/scripts/app-test/pr-build.func|g' "$RUNNING_FILE" - echo "Executing $RUNNING_FILE" - ERROR_MSG=$(./$RUNNING_FILE 2>&1 > /dev/null) - echo "Finished running $FILE" - if [ -n "$ERROR_MSG" ]; then - echo "ERROR in $STRIPPED_NAME: $ERROR_MSG" + echo "Found CT script for $STRIPPED_NAME" + chmod +x "$CT_SCRIPT" + RUNNING_FILE=$CT_SCRIPT + elif [[ $FILE =~ ^ct/.*\.sh$ ]]; then + INSTALL_SCRIPT="install/$STRIPPED_NAME-install.sh" + if [[ ! -f $INSTALL_SCRIPT ]]; then + echo "No install script found for $STRIPPED_NAME" + ERROR_MSG="No install script found for $FILE" echo "$ERROR_MSG" > result_$STRIPPED_NAME.log - fi - done - set -e # Restore exit-on-error - + continue + fi + echo "Found install script for $STRIPPED_NAME" + chmod +x "$INSTALL_SCRIPT" + RUNNING_FILE=$FILE + if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "ct/$STRIPPED_NAME.sh"; then + echo "The script contains an interactive prompt. Skipping execution." + continue + fi + fi + git remote add community-scripts https://github.com/community-scripts/ProxmoxVE.git + git fetch community-scripts + rm -f .github/workflows/scripts/app-test/pr-build.func || true + rm -f .github/workflows/scripts/app-test/pr-install.func || true + rm -f .github/workflows/scripts/app-test/pr-alpine-install.func || true + rm -f .github/workflows/scripts/app-test/pr-create-lxc.sh || true + git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-build.func + git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-install.func + git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-alpine-install.func + git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-create-lxc.sh + chmod +x $RUNNING_FILE + chmod +x .github/workflows/scripts/app-test/pr-create-lxc.sh + chmod +x .github/workflows/scripts/app-test/pr-install.func + chmod +x .github/workflows/scripts/app-test/pr-alpine-install.func + chmod +x .github/workflows/scripts/app-test/pr-build.func + sed -i 's|source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)|source .github/workflows/scripts/app-test/pr-build.func|g' "$RUNNING_FILE" + echo "Executing $RUNNING_FILE" + ERROR_MSG=$(./$RUNNING_FILE 2>&1 > /dev/null) + echo "Finished running $FILE" + if [ -n "$ERROR_MSG" ]; then + echo "ERROR in $STRIPPED_NAME: $ERROR_MSG" + echo "$ERROR_MSG" > result_$STRIPPED_NAME.log + fi + done + set -e # Restore exit-on-error + - name: Cleanup PVE Node run: | containers=$(pct list | tail -n +2 | awk '{print $0 " " $4}' | awk '{print $1}') - + for container_id in $containers; do status=$(pct status $container_id | awk '{print $2}') if [[ $status == "running" ]]; then @@ -139,26 +138,26 @@ jobs: pct destroy $container_id fi done - + - name: Post error comments run: | ERROR="false" SEARCH_LINE=".github/workflows/scripts/app-test/pr-build.func: line 255:" - + # Get all existing comments on the PR EXISTING_COMMENTS=$(gh pr view ${{ github.event.pull_request.number }} --repo ${{ github.repository }} --json comments --jq '.comments[].body') - + for FILE in ${{ env.ALL_FILES }}; do STRIPPED_NAME=$(basename "$FILE" | sed 's/-install//' | sed 's/\.sh$//') if [[ ! -f result_$STRIPPED_NAME.log ]]; then continue fi ERROR_MSG=$(cat result_$STRIPPED_NAME.log) - + if [ -n "$ERROR_MSG" ]; then CLEANED_ERROR_MSG=$(echo "$ERROR_MSG" | sed "s|$SEARCH_LINE.*||") COMMENT_BODY=":warning: The script _**$FILE**_ failed with the following message:
${CLEANED_ERROR_MSG}
" - + # Check if the comment already exists if echo "$EXISTING_COMMENTS" | grep -qF "$COMMENT_BODY"; then echo "Skipping duplicate comment for $FILE" @@ -171,7 +170,5 @@ jobs: fi fi done - + echo "ERROR=$ERROR" >> $GITHUB_ENV - - diff --git a/.github/workflows/script_format.yml b/.github/workflows/script_format.yml index a86a512b4..83d004e91 100644 --- a/.github/workflows/script_format.yml +++ b/.github/workflows/script_format.yml @@ -1,29 +1,29 @@ name: Script Format Check permissions: - pull-requests: write + pull-requests: write on: pull_request_target: branches: - main paths: - - 'install/*.sh' - - 'ct/*.sh' + - "install/*.sh" + - "ct/*.sh" jobs: run-install-script: runs-on: pvenode - steps: + steps: - name: Checkout PR branch (supports forks) uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.head.ref }} - repository: ${{ github.event.pull_request.head.repo.full_name }} - fetch-depth: 0 - + repository: ${{ github.event.pull_request.head.repo.full_name }} + fetch-depth: 0 + - name: Add Git safe directory run: | git config --global --add safe.directory /__w/ProxmoxVE/ProxmoxVE - + - name: Set up GH_TOKEN env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -38,7 +38,7 @@ jobs: echo "SCRIPT=$CHANGED_FILES" >> $GITHUB_ENV env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - + - name: Check scripts id: run-install continue-on-error: true @@ -54,13 +54,13 @@ jobs: FIRST_LINE=$(sed -n '1p' "$FILE") [[ "$FIRST_LINE" != "#!/usr/bin/env bash" ]] && echo "Line 1 was $FIRST_LINE | Should be: #!/usr/bin/env bash" >> "$LOG_FILE" SECOND_LINE=$(sed -n '2p' "$FILE") - [[ "$SECOND_LINE" != "source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)" ]] && - echo "Line 2 was $SECOND_LINE | Should be: source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)" >> "$LOG_FILE" + [[ "$SECOND_LINE" != "source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)" ]] && + echo "Line 2 was $SECOND_LINE | Should be: source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)" >> "$LOG_FILE" THIRD_LINE=$(sed -n '3p' "$FILE") if ! [[ "$THIRD_LINE" =~ ^#\ Copyright\ \(c\)\ [0-9]{4}-[0-9]{4}\ community-scripts\ ORG$ || "$THIRD_LINE" =~ ^Copyright\ \(c\)\ [0-9]{4}-[0-9]{4}\ tteck$ ]]; then echo "Line 3 was $THIRD_LINE | Should be: # Copyright (c) 2021-2025 community-scripts ORG" >> "$LOG_FILE" fi - + EXPECTED_AUTHOR="# Author:" EXPECTED_LICENSE="# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE" EXPECTED_SOURCE="# Source:" @@ -210,7 +210,6 @@ jobs: done - - name: Post error comments run: | ERROR="false" @@ -222,7 +221,7 @@ jobs: continue fi ERROR_MSG=$(cat $LOG_FILE) - + if [ -n "$ERROR_MSG" ]; then echo "Posting error message for $FILE" echo ${ERROR_MSG} @@ -240,4 +239,4 @@ jobs: - name: Fail if error if: ${{ env.ERROR == 'true' }} - run: exit 1 + run: exit 1 diff --git a/.github/workflows/scripts/app-test/pr-build.func b/.github/workflows/scripts/app-test/pr-build.func index 4ca15d099..0625e69e7 100644 --- a/.github/workflows/scripts/app-test/pr-build.func +++ b/.github/workflows/scripts/app-test/pr-build.func @@ -184,7 +184,7 @@ build_container() { echo "Container ID: $CTID" # This executes create_lxc.sh and creates the container and .conf file - bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/.github/workflows/scripts/app-test/pr-create-lxc.sh)" + bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/.github/workflows/scripts/app-test/pr-create-lxc.sh)" LXC_CONFIG=/etc/pve/lxc/${CTID}.conf if [ "$CT_TYPE" == "0" ]; then diff --git a/.github/workflows/scripts/app-test/pr-create-lxc.sh b/.github/workflows/scripts/app-test/pr-create-lxc.sh index 0bb2a9d2f..13252a2ca 100644 --- a/.github/workflows/scripts/app-test/pr-create-lxc.sh +++ b/.github/workflows/scripts/app-test/pr-create-lxc.sh @@ -160,4 +160,4 @@ if ! pct create "$CTID" "${TEMPLATE_STORAGE}:vztmpl/${TEMPLATE}" "${PCT_OPTIONS[ msg_error "A problem occurred while trying to create container after re-downloading template." exit 200 fi -fi +fi \ No newline at end of file diff --git a/.github/workflows/scripts/generate-app-headers.sh b/.github/workflows/scripts/generate-app-headers.sh index 854a0f1fc..645041649 100755 --- a/.github/workflows/scripts/generate-app-headers.sh +++ b/.github/workflows/scripts/generate-app-headers.sh @@ -31,4 +31,4 @@ find ./ct -type f -name "*.sh" | sort | while read -r script; do fi done -echo "Completed processing .sh files." +echo "Completed processing .sh files." \ No newline at end of file diff --git a/.github/workflows/scripts/update-json.sh b/.github/workflows/scripts/update-json.sh index b51df649f..1711f7550 100644 --- a/.github/workflows/scripts/update-json.sh +++ b/.github/workflows/scripts/update-json.sh @@ -16,5 +16,5 @@ fi DATE_IN_JSON=$(jq -r '.date_created' "$FILE" 2>/dev/null || echo "") if [[ "$DATE_IN_JSON" != "$TODAY" ]]; then - jq --arg date "$TODAY" '.date_created = $date' "$FILE" > tmp.json && mv tmp.json "$FILE" + jq --arg date "$TODAY" '.date_created = $date' "$FILE" >tmp.json && mv tmp.json "$FILE" fi diff --git a/.github/workflows/scripts/update_json_date.sh b/.github/workflows/scripts/update_json_date.sh index d07eab711..13305de83 100644 --- a/.github/workflows/scripts/update_json_date.sh +++ b/.github/workflows/scripts/update_json_date.sh @@ -11,8 +11,8 @@ for json_file in $json_dir; do if [[ "$current_json_date" != "$current_date" ]]; then echo "Updating $json_file with date $current_date" - jq --arg date "$current_date" '.date_created = $date' "$json_file" > temp.json && mv temp.json "$json_file" - + jq --arg date "$current_date" '.date_created = $date' "$json_file" >temp.json && mv temp.json "$json_file" + git add "$json_file" git commit -m "Update date_created to $current_date in $json_file" else diff --git a/CHANGELOG.md b/CHANGELOG.md index be5c8fd00..0daae65ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2519,7 +2519,7 @@ All LXC instances created using this repository come pre-installed with Midnight - **Automatic Update of Repository:** The update function now uses the new repository `community-scripts/ProxmoxVE` for Debian/Ubuntu LXC containers. ```bash - bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/update-repo.sh)" + bash -c "$(curl -fsSL https://github.com/community-scripts/ProxmoxVE/raw/main/misc/update-repo.sh)" ## 2024-10-31 diff --git a/ct/2fauth.sh b/ct/2fauth.sh index 0f689bee2..4c9aab34d 100644 --- a/ct/2fauth.sh +++ b/ct/2fauth.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: jkrgr0 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -31,7 +31,7 @@ function update_script() { fi # Crawling the new version and checking whether an update is required - RELEASE=$(curl -s https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/2fauth_version.txt)" ]] || [[ ! -f /opt/2fauth_version.txt ]]; then msg_info "Updating $APP to ${RELEASE}" @@ -59,9 +59,9 @@ function update_script() { fi # Execute Update - wget -q "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" + curl -fsSL -o "${RELEASE}.zip" "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" unzip -q "${RELEASE}.zip" - mv "2FAuth-${RELEASE//v}/" "/opt/2fauth" + mv "2FAuth-${RELEASE//v/}/" "/opt/2fauth" mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env" mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage" cd "/opt/2fauth" || return diff --git a/ct/actualbudget.sh b/ct/actualbudget.sh index 46617713f..c818ceabe 100644 --- a/ct/actualbudget.sh +++ b/ct/actualbudget.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop actualbudget @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" cd /tmp - wget -q https://github.com/actualbudget/actual/archive/refs/tags/v${RELEASE}.tar.gz + curl -fsSL -O https://github.com/actualbudget/actual/archive/refs/tags/v${RELEASE}.tar.gz mv /opt/actualbudget /opt/actualbudget_bak tar -xzf "v${RELEASE}.tar.gz" @@ -123,4 +123,4 @@ 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}:5006${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:5006${CL}" \ No newline at end of file diff --git a/ct/adguard.sh b/ct/adguard.sh index 800e10566..41436522f 100644 --- a/ct/adguard.sh +++ b/ct/adguard.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/adventurelog.sh b/ct/adventurelog.sh index 990790ca2..5df105770 100644 --- a/ct/adventurelog.sh +++ b/ct/adventurelog.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services" systemctl stop adventurelog-backend @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" mv /opt/adventurelog/ /opt/adventurelog-backup/ - wget -qO /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" + curl -fsSL -o /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" unzip -q /opt/v${RELEASE}.zip -d /opt/ mv /opt/AdventureLog-${RELEASE} /opt/adventurelog @@ -78,4 +78,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/agentdvr.sh b/ct/agentdvr.sh index 9dfdaa9d8..e398db3eb 100644 --- a/ct/agentdvr.sh +++ b/ct/agentdvr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/alpine-docker.sh b/ct/alpine-docker.sh index 079429fba..2c3c16e74 100644 --- a/ct/alpine-docker.sh +++ b/ct/alpine-docker.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -47,4 +47,4 @@ start build_container description -msg_ok "Completed Successfully!\n" +msg_ok "Completed Successfully!\n" \ No newline at end of file diff --git a/ct/alpine-grafana.sh b/ct/alpine-grafana.sh index 945970a5c..dc60d0d6f 100644 --- a/ct/alpine-grafana.sh +++ b/ct/alpine-grafana.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -62,4 +62,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${APP} should be reachable by going to the following URL. - ${BL}http://${IP}:3000${CL} \n" + ${BL}http://${IP}:3000${CL} \n" \ No newline at end of file diff --git a/ct/alpine-it-tools.sh b/ct/alpine-it-tools.sh index 40d9d087c..e107c2d4f 100644 --- a/ct/alpine-it-tools.sh +++ b/ct/alpine-it-tools.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: nicedevil007 (NiceDevil) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -24,28 +24,28 @@ function update_script() { check_container_storage check_container_resources -if [ ! -d /usr/share/nginx/html ]; then - msg_error "No ${APP} Installation Found!" - exit 1 -fi + if [ ! -d /usr/share/nginx/html ]; then + msg_error "No ${APP} Installation Found!" + exit 1 + fi -RELEASE=$(curl -s https://api.github.com/repos/CorentinTh/it-tools/releases/latest | grep '"tag_name":' | cut -d '"' -f4) -if [ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ] || [ ! -f /opt/${APP}_version.txt ]; then - DOWNLOAD_URL="https://github.com/CorentinTh/it-tools/releases/download/${RELEASE}/it-tools-${RELEASE#v}.zip" - msg_info "Updating ${APP} LXC" - curl -fsSL -o it-tools.zip "$DOWNLOAD_URL" - mkdir -p /usr/share/nginx/html - rm -rf /usr/share/nginx/html/* - unzip -q it-tools.zip -d /tmp/it-tools - cp -r /tmp/it-tools/dist/* /usr/share/nginx/html - rm -rf /tmp/it-tools - rm -f it-tools.zip - msg_ok "Updated Successfully" -else - msg_ok "No update required. ${APP} is already at ${RELEASE}" -fi + RELEASE=$(curl -fsSL https://api.github.com/repos/CorentinTh/it-tools/releases/latest | grep '"tag_name":' | cut -d '"' -f4) + if [ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ] || [ ! -f /opt/${APP}_version.txt ]; then + DOWNLOAD_URL="https://github.com/CorentinTh/it-tools/releases/download/${RELEASE}/it-tools-${RELEASE#v}.zip" + msg_info "Updating ${APP} LXC" + curl -fsSL -o it-tools.zip "$DOWNLOAD_URL" + mkdir -p /usr/share/nginx/html + rm -rf /usr/share/nginx/html/* + unzip -q it-tools.zip -d /tmp/it-tools + cp -r /tmp/it-tools/dist/* /usr/share/nginx/html + rm -rf /tmp/it-tools + rm -f it-tools.zip + msg_ok "Updated Successfully" + else + msg_ok "No update required. ${APP} is already at ${RELEASE}" + fi -exit 0 + exit 0 } start @@ -55,4 +55,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/alpine-nextcloud.sh b/ct/alpine-nextcloud.sh index 6b80737a7..899214dd6 100644 --- a/ct/alpine-nextcloud.sh +++ b/ct/alpine-nextcloud.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="alpine" var_version="3.21" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -28,10 +28,10 @@ function update_script() { apk add -q newt fi while true; do - CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 3 \ + CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 3 \ "1" "Nextcloud Login Credentials" ON \ "2" "Renew Self-signed Certificate" OFF \ - 3>&1 1>&2 2>&3) + 3>&1 1>&2 2>&3) exit_status=$? if [ $exit_status == 1 ]; then clear @@ -44,7 +44,7 @@ function update_script() { exit ;; 2) - openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/ssl/private/nextcloud-selfsigned.key -out /etc/ssl/certs/nextcloud-selfsigned.crt -subj "/C=US/O=Nextcloud/OU=Domain Control Validated/CN=nextcloud.local" > /dev/null 2>&1 + openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/ssl/private/nextcloud-selfsigned.key -out /etc/ssl/certs/nextcloud-selfsigned.crt -subj "/C=US/O=Nextcloud/OU=Domain Control Validated/CN=nextcloud.local" >/dev/null 2>&1 rc-service nginx restart exit ;; @@ -58,4 +58,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${APP} should be reachable by going to the following URL. - ${BL}https://${IP}${CL} \n" + ${BL}https://${IP}${CL} \n" \ No newline at end of file diff --git a/ct/alpine-redis.sh b/ct/alpine-redis.sh index 2080461ca..256e0223a 100644 --- a/ct/alpine-redis.sh +++ b/ct/alpine-redis.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/alpine-vaultwarden.sh b/ct/alpine-vaultwarden.sh index 5b67c1d33..7df7586ca 100644 --- a/ct/alpine-vaultwarden.sh +++ b/ct/alpine-vaultwarden.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -65,4 +65,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${APP} should be reachable by going to the following URL. - ${BL}http://${IP}:8000${CL} \n" + ${BL}http://${IP}:8000${CL} \n" \ No newline at end of file diff --git a/ct/alpine-zigbee2mqtt.sh b/ct/alpine-zigbee2mqtt.sh index 87bea32bd..d6497da0b 100644 --- a/ct/alpine-zigbee2mqtt.sh +++ b/ct/alpine-zigbee2mqtt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -47,4 +47,4 @@ start build_container description -msg_ok "Completed Successfully!\n" +msg_ok "Completed Successfully!\n" \ No newline at end of file diff --git a/ct/alpine.sh b/ct/alpine.sh index d1bf9d9f2..0d0932a71 100644 --- a/ct/alpine.sh +++ b/ct/alpine.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -35,4 +35,4 @@ start build_container description -msg_ok "Completed Successfully!\n" +msg_ok "Completed Successfully!\n" \ No newline at end of file diff --git a/ct/apache-cassandra.sh b/ct/apache-cassandra.sh index 0c3df5ac4..c83e2f283 100644 --- a/ct/apache-cassandra.sh +++ b/ct/apache-cassandra.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,6 @@ var_os="debian" var_version="12" var_unprivileged="1" - header_info "$APP" variables color diff --git a/ct/apache-couchdb.sh b/ct/apache-couchdb.sh index df768b03f..b182dbe8f 100644 --- a/ct/apache-couchdb.sh +++ b/ct/apache-couchdb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:5984/_utils/${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5984/_utils/${CL}" \ No newline at end of file diff --git a/ct/apache-guacamole.sh b/ct/apache-guacamole.sh index 5fed1c151..b6d22fde3 100644 --- a/ct/apache-guacamole.sh +++ b/ct/apache-guacamole.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Michel Roegl-Brunner (michelroegl-brunner) # License: | MIT https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,5 +38,4 @@ 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}:8080/guacamole${CL}" - +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/guacamole${CL}" \ No newline at end of file diff --git a/ct/apache-tika.sh b/ct/apache-tika.sh index 98dbf266e..d9a902254 100755 --- a/ct/apache-tika.sh +++ b/ct/apache-tika.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Andy Grunwald (andygrunwald) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE="$(wget -qO- https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)" + RELEASE="$(curl -fsSL https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)" if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop apache-tika @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt/apache-tika - wget -q "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" + curl -fsSL -o tika-server-standard-${RELEASE}.jar "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" mv --force tika-server-standard.jar tika-server-standard-prev-version.jar mv tika-server-standard-${RELEASE}.jar tika-server-standard.jar echo "${RELEASE}" >/opt/${APP}_version.txt diff --git a/ct/apache-tomcat.sh b/ct/apache-tomcat.sh index 799b48cf4..eea276e5a 100644 --- a/ct/apache-tomcat.sh +++ b/ct/apache-tomcat.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/apt-cacher-ng.sh b/ct/apt-cacher-ng.sh index 0db7408b9..4eb71a4a3 100644 --- a/ct/apt-cacher-ng.sh +++ b/ct/apt-cacher-ng.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:3142/acng-report.html${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3142/acng-report.html${CL}" \ No newline at end of file diff --git a/ct/archivebox.sh b/ct/archivebox.sh index 9e2c0f95e..8f216aacd 100644 --- a/ct/archivebox.sh +++ b/ct/archivebox.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -52,4 +52,4 @@ 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}:8000/admin/login${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000/admin/login${CL}" \ No newline at end of file diff --git a/ct/aria2.sh b/ct/aria2.sh index fe92d5814..78c30494d 100644 --- a/ct/aria2.sh +++ b/ct/aria2.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:6880${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6880${CL}" \ No newline at end of file diff --git a/ct/audiobookshelf.sh b/ct/audiobookshelf.sh index 1295e0b2c..4085d50f0 100644 --- a/ct/audiobookshelf.sh +++ b/ct/audiobookshelf.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:13378${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:13378${CL}" \ No newline at end of file diff --git a/ct/authelia.sh b/ct/authelia.sh index de6eb07ca..10d13329a 100644 --- a/ct/authelia.sh +++ b/ct/authelia.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: thost96 (thost96) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -25,13 +25,16 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d "/etc/authelia/" ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - RELEASE=$(curl -s https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - if [[ "${RELEASE}" != "$(/usr/bin/authelia -v | awk '{print substr($3, 2, length($2)) }' )" ]]; then + if [[ ! -d "/etc/authelia/" ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + if [[ "${RELEASE}" != "$(/usr/bin/authelia -v | awk '{print substr($3, 2, length($2)) }')" ]]; then msg_info "Updating $APP to ${RELEASE}" $STD apt-get update $STD apt-get -y upgrade - wget -q "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" +curl -fsSL "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" -O $(basename "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb") $STD dpkg -i "authelia_${RELEASE}_amd64.deb" msg_info "Cleaning Up" rm -f "authelia_${RELEASE}_amd64.deb" @@ -52,4 +55,4 @@ 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}:9091${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9091${CL}" \ No newline at end of file diff --git a/ct/authentik.sh b/ct/authentik.sh index 48e9a93ba..f714adc2a 100644 --- a/ct/authentik.sh +++ b/ct/authentik.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: remz1337 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}') + RELEASE=$(curl -fsSL https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop authentik-server @@ -36,7 +36,7 @@ function update_script() { msg_info "Building ${APP} website" mkdir -p /opt/authentik - wget -qO authentik.tar.gz "${RELEASE}" +curl -fsSL "${RELEASE}" -o "authentik.tar.gz" tar -xzf authentik.tar.gz -C /opt/authentik --strip-components 1 --overwrite rm -rf authentik.tar.gz cd /opt/authentik/website @@ -84,4 +84,4 @@ description 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}:9000/if/flow/initial-setup/${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000/if/flow/initial-setup/${CL}" \ No newline at end of file diff --git a/ct/autobrr.sh b/ct/autobrr.sh index f250a4c9e..19c3747ee 100644 --- a/ct/autobrr.sh +++ b/ct/autobrr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -33,7 +33,7 @@ function update_script() { msg_info "Updating ${APP} LXC" rm -rf /usr/local/bin/* - wget -q $(curl -s https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)") tar -C /usr/local/bin -xzf autobrr*.tar.gz rm -rf autobrr*.tar.gz msg_ok "Updated ${APP} LXC" diff --git a/ct/baikal.sh b/ct/baikal.sh index c9bac41e0..4d9850843 100644 --- a/ct/baikal.sh +++ b/ct/baikal.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" +curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -O $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip") mv /opt/baikal /opt/baikal-backup unzip -o -q "baikal-${RELEASE}.zip" cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/ @@ -67,4 +67,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/barcode-buddy.sh b/ct/barcode-buddy.sh index 3b6d36e0a..eb56208a2 100644 --- a/ct/barcode-buddy.sh +++ b/ct/barcode-buddy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt mv /opt/barcodebuddy/ /opt/barcodebuddy-backup - wget -q "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data @@ -68,4 +68,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/bazarr.sh b/ct/bazarr.sh index f628941f3..9866a6df8 100755 --- a/ct/bazarr.sh +++ b/ct/bazarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -23,12 +23,15 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /var/lib/bazarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi + if [[ ! -d /var/lib/bazarr/ ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi msg_info "Updating $APP LXC" $STD apt-get update $STD apt-get -y upgrade msg_ok "Updated $APP LXC" -exit + exit } start diff --git a/ct/beszel.sh b/ct/beszel.sh index 4d08fe947..1ffb37599 100644 --- a/ct/beszel.sh +++ b/ct/beszel.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) community-scripts ORG # Author: Michelle Zitzerman (Sinofage) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -30,11 +30,11 @@ function update_script() { msg_info "Stopping $APP" systemctl stop beszel-hub msg_ok "Stopped $APP" - + msg_info "Updating $APP" $STD /opt/beszel/beszel update msg_ok "Updated $APP" - + msg_info "Starting $APP" systemctl start beszel-hub msg_ok "Successfully started $APP" @@ -49,4 +49,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}" \ No newline at end of file diff --git a/ct/blocky.sh b/ct/blocky.sh index 9b5113a4e..9a1a9ca6e 100644 --- a/ct/blocky.sh +++ b/ct/blocky.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -23,11 +23,14 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - msg_info "Updating $APP LXC" - $STD apt-get update - $STD apt-get -y upgrade - msg_ok "Updated $APP LXC" + if [[ ! -d /var ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + msg_info "Updating $APP LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated $APP LXC" exit } diff --git a/ct/boltdiy.sh b/ct/boltdiy.sh index 931eed883..12e383b7f 100644 --- a/ct/boltdiy.sh +++ b/ct/boltdiy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/stackblitz-labs/bolt.diy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/stackblitz-labs/bolt.diy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/boltdiy_version.txt)" ]] || [[ ! -f /opt/boltdiy_version.txt ]]; then msg_info "Stopping $APP" systemctl stop boltdiy @@ -37,7 +37,7 @@ function update_script() { temp_dir=$(mktemp -d) temp_file=$(mktemp) cd $temp_dir - wget -q "https://github.com/stackblitz-labs/bolt.diy/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/stackblitz-labs/bolt.diy/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar xzf $temp_file cp -rf bolt.diy-${RELEASE}/* /opt/bolt.diy cd /opt/bolt.diy @@ -68,4 +68,4 @@ 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}:5173${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5173${CL}" \ No newline at end of file diff --git a/ct/bookstack.sh b/ct/bookstack.sh index 1301e5f1f..acf5cd1ef 100644 --- a/ct/bookstack.sh +++ b/ct/bookstack.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Apache2" systemctl stop apache2 @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" mv /opt/bookstack /opt/bookstack-backup - wget -q --directory-prefix=/opt "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "--directory-prefix=/opt "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -O $(basename "--directory-prefix=/opt "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip") unzip -q /opt/v${RELEASE}.zip -d /opt mv /opt/BookStack-${RELEASE} /opt/bookstack cp /opt/bookstack-backup/.env /opt/bookstack/.env @@ -43,7 +43,7 @@ function update_script() { cp -r /opt/bookstack-backup/storage/uploads/* /opt/bookstack/storage/uploads/ || true cp -r /opt/bookstack-backup/themes/* /opt/bookstack/themes/ || true cd /opt/bookstack - export COMPOSER_ALLOW_SUPERUSER=1 + export COMPOSER_ALLOW_SUPERUSER=1 $STD composer install --no-dev $STD php artisan migrate --force chown www-data:www-data -R /opt/bookstack /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads /opt/bookstack/storage @@ -75,4 +75,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/bunkerweb.sh b/ct/bunkerweb.sh index 1cbc68d25..856229077 100644 --- a/ct/bunkerweb.sh +++ b/ct/bunkerweb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -23,26 +23,29 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /etc/bunkerweb ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + if [[ ! -d /etc/bunkerweb ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then - msg_info "Updating ${APP} to ${RELEASE}" - cat </etc/apt/preferences.d/bunkerweb + msg_info "Updating ${APP} to ${RELEASE}" + cat </etc/apt/preferences.d/bunkerweb Package: bunkerweb Pin: version ${RELEASE} Pin-Priority: 1001 EOF - apt-get update - apt-get install -y nginx=1.26.3* - apt-get install -y bunkerweb=${RELEASE} - echo "${RELEASE}" >/opt/${APP}_version.txt - msg_ok "Updated ${APP} to ${RELEASE}" + apt-get update + apt-get install -y nginx=1.26.3* + apt-get install -y bunkerweb=${RELEASE} + echo "${RELEASE}" >/opt/${APP}_version.txt + msg_ok "Updated ${APP} to ${RELEASE}" -else - msg_ok "No update required. ${APP} is already at ${RELEASE}" -fi -exit + else + msg_ok "No update required. ${APP} is already at ${RELEASE}" + fi + exit } start diff --git a/ct/bytestash.sh b/ct/bytestash.sh index 52384e2c4..c68bcf2ba 100644 --- a/ct/bytestash.sh +++ b/ct/bytestash.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/jordan-dalby/ByteStash/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/jordan-dalby/ByteStash/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services" systemctl stop bytestash-backend @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" temp_file=$(mktemp) - wget -q "https://github.com/jordan-dalby/ByteStash/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/jordan-dalby/ByteStash/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file rm -rf /opt/bytestash/server/node_modules rm -rf /opt/bytestash/client/node_modules @@ -70,4 +70,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/caddy.sh b/ct/caddy.sh index a0f6e1dfa..7a8781ce8 100644 --- a/ct/caddy.sh +++ b/ct/caddy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:80${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}" \ No newline at end of file diff --git a/ct/calibre-web.sh b/ct/calibre-web.sh index 4e4001d1d..aedf07c64 100644 --- a/ct/calibre-web.sh +++ b/ct/calibre-web.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: remz1337 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -36,13 +36,13 @@ function update_script() { rm -rf kepubify-linux-64bit curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit chmod +x kepubify-linux-64bit - menu_array=("1" "Enables gdrive as storage backend for your ebooks" OFF \ - "2" "Enables sending emails via a googlemail account without enabling insecure apps" OFF \ - "3" "Enables displaying of additional author infos on the authors page" OFF \ - "4" "Enables login via LDAP server" OFF \ - "5" "Enables login via google or github oauth" OFF \ - "6" "Enables extracting of metadata from epub, fb2, pdf files, and also extraction of covers from cbr, cbz, cbt files" OFF \ - "7" "Enables extracting of metadata from cbr, cbz, cbt files" OFF \ + menu_array=("1" "Enables gdrive as storage backend for your ebooks" OFF + "2" "Enables sending emails via a googlemail account without enabling insecure apps" OFF + "3" "Enables displaying of additional author infos on the authors page" OFF + "4" "Enables login via LDAP server" OFF + "5" "Enables login via google or github oauth" OFF + "6" "Enables extracting of metadata from epub, fb2, pdf files, and also extraction of covers from cbr, cbz, cbt files" OFF + "7" "Enables extracting of metadata from cbr, cbz, cbt files" OFF "8" "Enables syncing with your kobo reader" OFF) if [ -f "/opt/calibre-web/options.txt" ]; then cps_options="$(cat /opt/calibre-web/options.txt)" @@ -135,4 +135,4 @@ 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}:8083${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8083${CL}" \ No newline at end of file diff --git a/ct/casaos.sh b/ct/casaos.sh index 0191c4128..c4c1e9a5e 100644 --- a/ct/casaos.sh +++ b/ct/casaos.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/changedetection.sh b/ct/changedetection.sh index 33a1bb41b..8f95148ca 100644 --- a/ct/changedetection.sh +++ b/ct/changedetection.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -74,4 +74,4 @@ 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}:5000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}" \ No newline at end of file diff --git a/ct/channels.sh b/ct/channels.sh index 58f0ac0c7..e62fd22b0 100644 --- a/ct/channels.sh +++ b/ct/channels.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/checkmk.sh b/ct/checkmk.sh index 931830dd4..36f9c9215 100644 --- a/ct/checkmk.sh +++ b/ct/checkmk.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Michel Roegl-Brunner (michelroegl-brunner) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,16 +27,16 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -v '\-rc' | sort -V | tail -n 1) + RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -v '\-rc' | sort -V | tail -n 1) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} to v${RELEASE}" $STD omd stop monitoring $STD omd cp monitoring monitoringbackup - wget -q https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb -O /opt/checkmk.deb +curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb" $STD apt-get install -y /opt/checkmk.deb $STD omd --force -V ${RELEASE}.cre update --conflict=install monitoring $STD omd start monitoring - $STD omd -f rm monitoringbackup + $STD omd -f rm monitoringbackup $STD omd cleanup rm -rf /opt/checkmk.deb msg_ok "Updated ${APP} to v${RELEASE}" @@ -54,4 +54,4 @@ 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}/monitoring${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/monitoring${CL}" \ No newline at end of file diff --git a/ct/cloudflared.sh b/ct/cloudflared.sh index ceaa963f7..6d9e46dc6 100644 --- a/ct/cloudflared.sh +++ b/ct/cloudflared.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/cockpit.sh b/ct/cockpit.sh index e6df8eb1a..59ab5a73c 100644 --- a/ct/cockpit.sh +++ b/ct/cockpit.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: havardthom # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -51,7 +51,7 @@ function update_script() { $STD apt-get install -y gawk msg_ok "Installed dependencies" msg_info "Installing Cockpit file sharing" - wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)") $STD dpkg -i cockpit-file-sharing_*focal_all.deb rm cockpit-file-sharing_*focal_all.deb msg_ok "Installed Cockpit file sharing" @@ -64,7 +64,7 @@ function update_script() { $STD apt-get install -y samba-common-bin msg_ok "Installed dependencies" msg_info "Installing Cockpit identities" - wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)") $STD dpkg -i cockpit-identities_*focal_all.deb rm cockpit-identities_*focal_all.deb msg_ok "Installed Cockpit identities" @@ -76,7 +76,7 @@ function update_script() { $STD apt-get install -y zip msg_ok "Installed dependencies" msg_info "Installing Cockpit navigator" - wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)") $STD dpkg -i cockpit-navigator_*focal_all.deb rm cockpit-navigator_*focal_all.deb msg_ok "Installed Cockpit navigator" diff --git a/ct/commafeed.sh b/ct/commafeed.sh index 5fc47c8df..cefa507f3 100644 --- a/ct/commafeed.sh +++ b/ct/commafeed.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,14 +27,14 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -sL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + RELEASE=$(curl -fsSLL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop commafeed msg_ok "Stopped ${APP}" msg_info "Updating ${APP} to ${RELEASE}" - wget -q https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip +curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -O $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip") unzip -q commafeed-${RELEASE}-h2-jvm.zip rsync -a --exclude 'data/' commafeed-${RELEASE}-h2/ /opt/commafeed/ rm -rf commafeed-${RELEASE}-h2 commafeed-${RELEASE}-h2-jvm.zip @@ -58,4 +58,4 @@ 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}:8082${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8082${CL}" \ No newline at end of file diff --git a/ct/cosmos.sh b/ct/cosmos.sh index 381a50b9d..5ef502848 100644 --- a/ct/cosmos.sh +++ b/ct/cosmos.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Michel Roegl-Brunner (michelroegl-brunner) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -37,4 +37,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/crafty-controller.sh b/ct/crafty-controller.sh index 336a3d8f2..df8310fe8 100644 --- a/ct/crafty-controller.sh +++ b/ct/crafty-controller.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts # Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -20,61 +20,60 @@ color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/crafty-controller ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - - RELEASE=$(curl -s "https://gitlab.com/api/v4/projects/20430749/releases" | grep -o '"tag_name":"v[^"]*"' | head -n 1 | sed 's/"tag_name":"v//;s/"//') - if [[ ! -f /opt/crafty-controller_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/crafty-controller_version.txt)" ]]; then - - msg_info "Stopping Crafty-Controller" - systemctl stop crafty-controller - msg_ok "Stopped Crafty-Controller" + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/crafty-controller ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi - msg_info "Creating Backup of config" - cp -a /opt/crafty-controller/crafty/crafty-4/app/config/. /opt/crafty-controller/backup - rm /opt/crafty-controller/backup/version.json - rm /opt/crafty-controller/backup/credits.json - rm /opt/crafty-controller/backup/logging.json - rm /opt/crafty-controller/backup/default.json.example - rm /opt/crafty-controller/backup/motd_format.json - msg_ok "Backup Created" - - msg_info "Updating Crafty-Controller to v${RELEASE}" - wget -q "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" - unzip -q crafty-4-v${RELEASE}.zip - cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/ - rm -rf crafty-4-v${RELEASE} - cd /opt/crafty-controller/crafty/crafty-4 - sudo -u crafty bash -c ' + RELEASE=$(curl -fsSL "https://gitlab.com/api/v4/projects/20430749/releases" | grep -o '"tag_name":"v[^"]*"' | head -n 1 | sed 's/"tag_name":"v//;s/"//') + if [[ ! -f /opt/crafty-controller_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/crafty-controller_version.txt)" ]]; then + + msg_info "Stopping Crafty-Controller" + systemctl stop crafty-controller + msg_ok "Stopped Crafty-Controller" + + msg_info "Creating Backup of config" + cp -a /opt/crafty-controller/crafty/crafty-4/app/config/. /opt/crafty-controller/backup + rm /opt/crafty-controller/backup/version.json + rm /opt/crafty-controller/backup/credits.json + rm /opt/crafty-controller/backup/logging.json + rm /opt/crafty-controller/backup/default.json.example + rm /opt/crafty-controller/backup/motd_format.json + msg_ok "Backup Created" + + msg_info "Updating Crafty-Controller to v${RELEASE}" +curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -O $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip") + unzip -q crafty-4-v${RELEASE}.zip + cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/ + rm -rf crafty-4-v${RELEASE} + cd /opt/crafty-controller/crafty/crafty-4 + sudo -u crafty bash -c ' source /opt/crafty-controller/crafty/.venv/bin/activate pip3 install --no-cache-dir -r requirements.txt ' &>/dev/null - echo "${RELEASE}" >"/opt/crafty-controller_version.txt" - msg_ok "Updated Crafty-Controller to v${RELEASE}" + echo "${RELEASE}" >"/opt/crafty-controller_version.txt" + msg_ok "Updated Crafty-Controller to v${RELEASE}" - msg_info "Restoring Backup of config" - cp -a /opt/crafty-controller/backup/. /opt/crafty-controller/crafty/crafty-4/app/config - rm -rf /opt/crafty-controller/backup - chown -R crafty:crafty /opt/crafty-controller/ - msg_ok "Backup Restored" + msg_info "Restoring Backup of config" + cp -a /opt/crafty-controller/backup/. /opt/crafty-controller/crafty/crafty-4/app/config + rm -rf /opt/crafty-controller/backup + chown -R crafty:crafty /opt/crafty-controller/ + msg_ok "Backup Restored" - msg_info "Starting Crafty-Controller" - systemctl start crafty-controller - msg_ok "Started Crafty-Controller" + msg_info "Starting Crafty-Controller" + systemctl start crafty-controller + msg_ok "Started Crafty-Controller" - msg_ok "Updated Successfully" - exit + msg_ok "Updated Successfully" + exit else msg_ok "No update required. Crafty-Controller is already at v${RELEASE}." fi } - start build_container description @@ -82,4 +81,4 @@ 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}:8443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8443${CL}" \ No newline at end of file diff --git a/ct/create_lxc.sh b/ct/create_lxc.sh index c715358cb..53ae7a2bd 100644 --- a/ct/create_lxc.sh +++ b/ct/create_lxc.sh @@ -279,4 +279,4 @@ if ! pct create "$CTID" "${TEMPLATE_STORAGE}:vztmpl/${TEMPLATE}" "${PCT_OPTIONS[ exit 209 fi fi -msg_ok "LXC Container ${BL}$CTID${CL} ${GN}was successfully created." +msg_ok "LXC Container ${BL}$CTID${CL} ${GN}was successfully created." \ No newline at end of file diff --git a/ct/cronicle.sh b/ct/cronicle.sh index 8ce0e6783..c88515dfc 100644 --- a/ct/cronicle.sh +++ b/ct/cronicle.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -53,7 +53,7 @@ function update_script() { echo "Installed NPM..." fi fi - LATEST=$(curl -sL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + LATEST=$(curl -fsSLL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4) IP=$(hostname -I | awk '{print $1}') msg_info "Installing Dependencies" diff --git a/ct/cross-seed.sh b/ct/cross-seed.sh index 0a2337acf..f6be7c13a 100644 --- a/ct/cross-seed.sh +++ b/ct/cross-seed.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Jakub Matraszek (jmatraszek) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -24,7 +24,7 @@ function update_script() { check_container_storage check_container_resources - if command -v cross-seed &> /dev/null; then + if command -v cross-seed &>/dev/null; then current_version=$(cross-seed --version) latest_version=$(npm show cross-seed version) if [ "$current_version" != "$latest_version" ]; then @@ -49,4 +49,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} Access cross-seed API using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:2468${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:2468${CL}" \ No newline at end of file diff --git a/ct/cryptpad.sh b/ct/cryptpad.sh index cb849a296..666c78c69 100644 --- a/ct/cryptpad.sh +++ b/ct/cryptpad.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/cryptpad/cryptpad/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/cryptpad/cryptpad/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop cryptpad @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating $APP to ${RELEASE}" temp_dir=$(mktemp -d) cp -f /opt/cryptpad/config/config.js /opt/config.js - wget -q "https://github.com/cryptpad/cryptpad/archive/refs/tags/${RELEASE}.tar.gz" -P $temp_dir +curl -fsSL "https://github.com/cryptpad/cryptpad/archive/refs/tags/${RELEASE}.tar.gz" -P $temp_dir" -O $(basename "https://github.com/cryptpad/cryptpad/archive/refs/tags/${RELEASE}.tar.gz" -P $temp_dir") cd $temp_dir tar zxf $RELEASE.tar.gz cp -rf cryptpad-$RELEASE/* /opt/cryptpad @@ -71,4 +71,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/daemonsync.sh b/ct/daemonsync.sh index 93c9bf63e..73b36d1f9 100644 --- a/ct/daemonsync.sh +++ b/ct/daemonsync.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/dashy.sh b/ct/dashy.sh index 363bdede7..24da251a7 100644 --- a/ct/dashy.sh +++ b/ct/dashy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { exit fi - RELEASE=$(curl -sL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + RELEASE=$(curl -fsSLL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4) if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop dashy @@ -46,7 +46,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" rm -rf /opt/dashy mkdir -p /opt/dashy - wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1 +curl -fsSL "https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz" | tar -xz -C /opt/dashy --strip-components=1 cd /opt/dashy npm install npm run build diff --git a/ct/debian.sh b/ct/debian.sh index 3ccd702f0..6551ff5d4 100644 --- a/ct/debian.sh +++ b/ct/debian.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/deconz.sh b/ct/deconz.sh index 6207822f3..468e587b3 100644 --- a/ct/deconz.sh +++ b/ct/deconz.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/deluge.sh b/ct/deluge.sh index e226ecd20..d9aba00e3 100644 --- a/ct/deluge.sh +++ b/ct/deluge.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/docker.sh b/ct/docker.sh index cf79db906..99f3aefd2 100644 --- a/ct/docker.sh +++ b/ct/docker.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/dockge.sh b/ct/dockge.sh index cded6c6c1..e5e989015 100644 --- a/ct/dockge.sh +++ b/ct/dockge.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/docmost.sh b/ct/docmost.sh index 964703ded..47b96f60f 100644 --- a/ct/docmost.sh +++ b/ct/docmost.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -43,7 +43,7 @@ function update_script() { $STD apt-get install -y nodejs $STD npm install -g pnpm@10.4.0 export NODE_OPTIONS="--max_old_space_size=4096" - RELEASE=$(curl -s https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop docmost @@ -54,7 +54,7 @@ function update_script() { cp -r /opt/docmost/data /opt/ rm -rf /opt/docmost temp_file=$(mktemp) - wget -q "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" + curl -fsSL "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" mv docmost-${RELEASE} /opt/docmost cd /opt/docmost diff --git a/ct/dolibarr.sh b/ct/dolibarr.sh index ab8ef73ea..0fdf86000 100644 --- a/ct/dolibarr.sh +++ b/ct/dolibarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}/dolibarr/install${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/dolibarr/install${CL}" \ No newline at end of file diff --git a/ct/dotnetaspwebapi.sh b/ct/dotnetaspwebapi.sh index 508465b8b..2fd2fe4e3 100644 --- a/ct/dotnetaspwebapi.sh +++ b/ct/dotnetaspwebapi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Kristian Skov # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}${IP}:80${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}:80${CL}" \ No newline at end of file diff --git a/ct/duplicati.sh b/ct/duplicati.sh index 845b012b1..22e1d9d93 100644 --- a/ct/duplicati.sh +++ b/ct/duplicati.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,13 +27,13 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/duplicati/duplicati/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') + RELEASE=$(curl -fsSL https://api.github.com/repos/duplicati/duplicati/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop duplicati msg_ok "Stopped $APP" msg_info "Updating $APP to v${RELEASE}" - wget -q "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb" +curl -fsSL "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb" -O $(basename "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb") $STD dpkg -i duplicati-${RELEASE}-linux-x64-gui.deb echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated $APP to v${RELEASE}" @@ -60,4 +60,4 @@ 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}:8200${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8200${CL}" \ No newline at end of file diff --git a/ct/elementsynapse.sh b/ct/elementsynapse.sh index 64057fa4d..d021db518 100644 --- a/ct/elementsynapse.sh +++ b/ct/elementsynapse.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -23,7 +23,7 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /etc/matrix-synapse ]]; then + if [[ ! -d /etc/matrix-synapse ]]; then msg_error "No ${APP} Installation Found!" exit fi diff --git a/ct/emby.sh b/ct/emby.sh index b63e6085b..33474fe6f 100644 --- a/ct/emby.sh +++ b/ct/emby.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,13 +27,13 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - LATEST=$(curl -sL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + LATEST=$(curl -fsSLL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4) msg_info "Stopping ${APP}" systemctl stop emby-server msg_ok "Stopped ${APP}" msg_info "Updating ${APP}" - $STD wget https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb + $STD curl -fsSL "https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb" -O $STD dpkg -i emby-server-deb_${LATEST}_amd64.deb rm emby-server-deb_${LATEST}_amd64.deb msg_ok "Updated ${APP}" diff --git a/ct/emqx.sh b/ct/emqx.sh index 64282ba48..e4ab16486 100644 --- a/ct/emqx.sh +++ b/ct/emqx.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:18083${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:18083${CL}" \ No newline at end of file diff --git a/ct/ersatztv.sh b/ct/ersatztv.sh index 3619268e3..2ccfdc2c7 100644 --- a/ct/ersatztv.sh +++ b/ct/ersatztv.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -19,15 +19,15 @@ variables color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/ErsatzTV ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1) - if [[ ! -f /opt/${APP}_version.txt && $(echo "x.x.x" > /opt/${APP}_version.txt) || "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/ErsatzTV ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1) + if [[ ! -f /opt/${APP}_version.txt && $(echo "x.x.x" >/opt/${APP}_version.txt) || "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ErsatzTV" systemctl stop ersatzTV msg_ok "Stopped ErsatzTV" @@ -37,7 +37,7 @@ function update_script() { rm ErsatzTV-backup/ErsatzTV rm -rf /opt/ErsatzTV temp_file=$(mktemp) - wget -qO- https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz -O "$temp_file" + curl -fsSL "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" -o "$temp_file" tar -xzf "$temp_file" mv ErsatzTV-${RELEASE}-linux-x64 /opt/ErsatzTV cp -R ErsatzTV-backup/* /opt/ErsatzTV/ @@ -59,7 +59,6 @@ function update_script() { exit } - start build_container description diff --git a/ct/esphome.sh b/ct/esphome.sh index aaadfa2c3..e7911cbde 100644 --- a/ct/esphome.sh +++ b/ct/esphome.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/evcc.sh b/ct/evcc.sh index f79a6ba51..7bf81933b 100644 --- a/ct/evcc.sh +++ b/ct/evcc.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/excalidraw.sh b/ct/excalidraw.sh index c1347b41c..8bb7d19e5 100644 --- a/ct/excalidraw.sh +++ b/ct/excalidraw.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/excalidraw_version.txt)" ]] || [[ ! -f /opt/excalidraw_version.txt ]]; then msg_info "Stopping $APP" systemctl stop excalidraw @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" cd /tmp temp_file=$(mktemp) - wget -q "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar xzf $temp_file rm -rf /opt/excalidraw mv excalidraw-${RELEASE} /opt/excalidraw @@ -69,4 +69,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/fenrus.sh b/ct/fenrus.sh index 13c41990a..7af1a19f3 100644 --- a/ct/fenrus.sh +++ b/ct/fenrus.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: Scorpoon # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -66,4 +66,4 @@ 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}:5000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}" \ No newline at end of file diff --git a/ct/fhem.sh b/ct/fhem.sh index e5680d816..c3810ae14 100644 --- a/ct/fhem.sh +++ b/ct/fhem.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/fileflows.sh b/ct/fileflows.sh index fe0c82f86..aad3f73fb 100644 --- a/ct/fileflows.sh +++ b/ct/fileflows.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kkroboth # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - update_available=$(curl -s -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable) + update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable) if [[ "${update_available}" == "true" ]]; then msg_info "Stopping $APP" systemctl stop fileflows @@ -70,4 +70,4 @@ 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}:19200${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:19200${CL}" \ No newline at end of file diff --git a/ct/firefly.sh b/ct/firefly.sh index 5f267af02..1dd94b84a 100644 --- a/ct/firefly.sh +++ b/ct/firefly.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: quantumryuu # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -20,15 +20,15 @@ color catch_errors function update_script() { -header_info -check_container_storage -check_container_resources + header_info + check_container_storage + check_container_resources if [[ ! -d /opt/firefly ]]; then msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/firefly-iii/firefly-iii/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') + RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/firefly-iii/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Apache2" systemctl stop apache2 @@ -38,11 +38,11 @@ check_container_resources cp /opt/firefly/.env /opt/.env cp -r /opt/firefly/storage /opt/storage cd /opt - wget -q "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz" +curl -fsSL "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz" -O $(basename "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz") tar -xzf FireflyIII-v${RELEASE}.tar.gz -C /opt/firefly --exclude='storage' cp /opt/.env /opt/firefly/.env cp -r /opt/storage /opt/firefly/storage - cd /opt/firefly + cd /opt/firefly chown -R www-data:www-data /opt/firefly chmod -R 775 /opt/firefly/storage $STD php artisan migrate --seed --force @@ -74,4 +74,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/flaresolverr.sh b/ct/flaresolverr.sh index 8d0535e21..56e21eed9 100644 --- a/ct/flaresolverr.sh +++ b/ct/flaresolverr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: remz1337 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,11 +27,11 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/FlareSolverr/FlareSolverr/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) + RELEASE=$(curl -fsSL https://github.com/FlareSolverr/FlareSolverr/releases/latest | grep "title>Release" | cut -d " " -f 4) if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Updating $APP LXC" systemctl stop flaresolverr - wget -q https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz + curl -fsSL "https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz" -O $(basename "https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz") tar -xzf flaresolverr_linux_x64.tar.gz -C /opt rm flaresolverr_linux_x64.tar.gz systemctl start flaresolverr @@ -50,4 +50,4 @@ 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}:8191${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8191${CL}" diff --git a/ct/flowiseai.sh b/ct/flowiseai.sh index 5123a095c..f985e4df8 100644 --- a/ct/flowiseai.sh +++ b/ct/flowiseai.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/fluid-calendar.sh b/ct/fluid-calendar.sh index beb7deae5..bea903d30 100644 --- a/ct/fluid-calendar.sh +++ b/ct/fluid-calendar.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: vhsdream # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop fluid-calendar.service @@ -39,7 +39,7 @@ function update_script() { cp /opt/fluid-calendar/.env /opt/fluid.env rm -rf /opt/fluid-calendar tmp_file=$(mktemp) - wget -q "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -O $tmp_file +curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file" unzip -q $tmp_file mv ${APP}-${RELEASE}/ /opt/fluid-calendar mv /opt/fluid.env /opt/fluid-calendar/.env @@ -74,4 +74,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/forgejo.sh b/ct/forgejo.sh index 40d22bf84..da3db73e1 100644 --- a/ct/forgejo.sh +++ b/ct/forgejo.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -32,8 +32,8 @@ function update_script() { msg_ok "Stopped ${APP}" msg_info "Updating ${APP}" - RELEASE=$(curl -s https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') - wget -qO forgejo-$RELEASE-linux-amd64 "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" + RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') +curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64" rm -rf /opt/forgejo/* cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64 chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64 diff --git a/ct/freshrss.sh b/ct/freshrss.sh index ef7d11d29..c9057df46 100644 --- a/ct/freshrss.sh +++ b/ct/freshrss.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/frigate.sh b/ct/frigate.sh index 72d28f574..7a16b4c7a 100644 --- a/ct/frigate.sh +++ b/ct/frigate.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Authors: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/ghost.sh b/ct/ghost.sh index bb50897ee..5ae1d332f 100644 --- a/ct/ghost.sh +++ b/ct/ghost.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: fabrice1236 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -49,4 +49,4 @@ 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}:2368${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:2368${CL}" \ No newline at end of file diff --git a/ct/gitea.sh b/ct/gitea.sh index 4c09fdb0c..2bae31f37 100644 --- a/ct/gitea.sh +++ b/ct/gitea.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: Rogue-King # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,9 +27,9 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/go-gitea/gitea/releases/latest -O - | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//') + RELEASE=$(curl -fsSL https://github.com/go-gitea/gitea/releases/latest | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//') msg_info "Updating $APP to ${RELEASE}" - wget -q https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64 + curl -fsSL "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64" -O $(basename "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64") systemctl stop gitea rm -rf /usr/local/bin/gitea mv gitea* /usr/local/bin/gitea diff --git a/ct/glance.sh b/ct/glance.sh index 88552383f..5955a6efe 100644 --- a/ct/glance.sh +++ b/ct/glance.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop glance @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz +curl -fsSL "https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz" -O $(basename "https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz") rm -rf /opt/glance/glance tar -xzf glance-linux-amd64.tar.gz -C /opt/glance echo "${RELEASE}" >"/opt/${APP}_version.txt" @@ -64,4 +64,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/glpi.sh b/ct/glpi.sh index 46eafb776..565078ee6 100644 --- a/ct/glpi.sh +++ b/ct/glpi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Nícolas Pastorello (opastorello) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') + RELEASE=$(curl -fsSL https://api.github.com/repos/glpi-project/glpi/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_error "Currently we don't provide an update function for this ${APP}." else @@ -44,4 +44,4 @@ 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}:80${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}" \ No newline at end of file diff --git a/ct/go2rtc.sh b/ct/go2rtc.sh index a123e7ea6..dcfff2173 100644 --- a/ct/go2rtc.sh +++ b/ct/go2rtc.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -31,7 +31,7 @@ function update_script() { systemctl stop go2rtc cd /opt/go2rtc rm go2rtc_linux_amd64 - wget -q https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64 +curl -fsSL "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64" -O $(basename "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64") chmod +x go2rtc_linux_amd64 systemctl start go2rtc msg_ok "Updated $APP" diff --git a/ct/gokapi.sh b/ct/gokapi.sh index 74ff5c04d..33671135f 100644 --- a/ct/gokapi.sh +++ b/ct/gokapi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:53842/setup${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:53842/setup${CL}" \ No newline at end of file diff --git a/ct/gomft.sh b/ct/gomft.sh index 519d23b64..9781c0d60 100644 --- a/ct/gomft.sh +++ b/ct/gomft.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,6 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -fsSL https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if ! dpkg -l | grep -q "^ii.*build-essential"; then $STD apt-get install -y build-essential fi @@ -39,6 +38,7 @@ function update_script() { $STD apt-get update $STD apt-get install -y nodejs fi + RELEASE=$(curl -fsSL https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop gomft diff --git a/ct/gotify.sh b/ct/gotify.sh index 5bdff3bec..17963ce5c 100644 --- a/ct/gotify.sh +++ b/ct/gotify.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop gotify @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" cd /opt/gotify - wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip +curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -O $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip") unzip -oq gotify-linux-amd64.zip rm -rf gotify-linux-amd64.zip chmod +x gotify-linux-amd64 @@ -60,4 +60,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/grafana.sh b/ct/grafana.sh index 7a42a86ec..30095222a 100644 --- a/ct/grafana.sh +++ b/ct/grafana.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/graylog.sh b/ct/graylog.sh index 5beed3753..35743a048 100644 --- a/ct/graylog.sh +++ b/ct/graylog.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -54,4 +54,4 @@ 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}:9000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000${CL}" \ No newline at end of file diff --git a/ct/grist.sh b/ct/grist.sh index ab37a164b..2d8815aee 100644 --- a/ct/grist.sh +++ b/ct/grist.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Source: https://github.com/gristlabs/grist-core APP="Grist" @@ -26,7 +26,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP} Service" @@ -38,7 +38,7 @@ function update_script() { cd /opt rm -rf grist_bak mv grist grist_bak - wget -q https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip +curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip") unzip -q v$RELEASE.zip mv grist-core-${RELEASE} grist @@ -88,4 +88,4 @@ 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}Grist: http://${IP}:8484${CL}" +echo -e "${TAB}${GATEWAY}${BGN}Grist: http://${IP}:8484${CL}" \ No newline at end of file diff --git a/ct/grocy.sh b/ct/grocy.sh index 6640e4140..ec161dbf2 100644 --- a/ct/grocy.sh +++ b/ct/grocy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -30,7 +30,7 @@ function update_script() { php_version=$(php -v | head -n 1 | awk '{print $2}') if [[ ! $php_version == "8.3"* ]]; then msg_info "Updating PHP" - curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg + curl -fsSLSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ bookworm main" >/etc/apt/sources.list.d/php.list apt-get update apt-get install -y php8.3 php8.3-cli php8.3-{bz2,curl,mbstring,intl,sqlite3,fpm,gd,zip,xml} diff --git a/ct/habitica.sh b/ct/habitica.sh index a85a973ef..195876fa8 100644 --- a/ct/habitica.sh +++ b/ct/habitica.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/HabitRPG/habitica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/HabitRPG/habitica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop habitica-mongodb @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating $APP to ${RELEASE}" temp_file=$(mktemp) - wget -q "https://github.com/HabitRPG/habitica/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/HabitRPG/habitica/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file cp -rf habitica-${RELEASE}/* /opt/habitica cd /opt/habitica @@ -71,4 +71,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/headscale.sh b/ct/headscale.sh index d0257bfec..155966e9d 100644 --- a/ct/headscale.sh +++ b/ct/headscale.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,14 +27,14 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop headscale msg_ok "Stopped ${APP}" msg_info "Updating $APP to v${RELEASE}" - wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb +curl -fsSL "https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb") dpkg -i headscale_${RELEASE}_linux_amd64.deb rm headscale_${RELEASE}_linux_amd64.deb echo "${RELEASE}" >/opt/${APP}_version.txt @@ -56,4 +56,4 @@ build_container description msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" \ No newline at end of file diff --git a/ct/heimdall-dashboard.sh b/ct/heimdall-dashboard.sh index ba8f3d7da..f9ce7b450 100644 --- a/ct/heimdall-dashboard.sh +++ b/ct/heimdall-dashboard.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') + RELEASE=$(curl -fsSLX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop heimdall @@ -39,9 +39,9 @@ function update_script() { sleep 1 msg_ok "Backed up Data" msg_info "Updating Heimdall Dashboard to ${RELEASE}" - wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz +curl -fsSL "https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz" -O $(basename "https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz") tar xzf ${RELEASE}.tar.gz - VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + VER=$(curl -fsSL https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cp -R Heimdall-${VER}/* /opt/Heimdall cd /opt/Heimdall $STD apt-get install -y composer diff --git a/ct/hev-socks5-server.sh b/ct/hev-socks5-server.sh index 84e9bd287..1b5da660c 100644 --- a/ct/hev-socks5-server.sh +++ b/ct/hev-socks5-server.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: miviro # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/heiher/${APP}/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/heiher/${APP}/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop $APP @@ -61,4 +61,4 @@ msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} Access it with a SOCKS5 client using the following URL:${CL}" echo -e "${TAB}${GATEWAY}${BGN}${IP}:1080${CL}" -echo -e "${INFO}${YW} and the credentials stored at /root/hev.creds${CL}" +echo -e "${INFO}${YW} and the credentials stored at /root/hev.creds${CL}" \ No newline at end of file diff --git a/ct/hivemq.sh b/ct/hivemq.sh index 4fed0463f..7c959a8fb 100644 --- a/ct/hivemq.sh +++ b/ct/hivemq.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/hoarder.sh b/ct/hoarder.sh index dea6c1b7d..d0c8ba800 100644 --- a/ct/hoarder.sh +++ b/ct/hoarder.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) & vhsdream # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') PREV_RELEASE=$(cat /opt/${APP}_version.txt) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "${PREV_RELEASE}" ]]; then msg_info "Stopping Services" @@ -38,7 +38,7 @@ function update_script() { $STD npm install -g corepack@0.31.0 fi if [[ "${PREV_RELEASE}" < 0.23.0 ]]; then - $STD apt-get install -y graphicsmagick ghostscript + $STD apt-get install -y graphicsmagick ghostscript fi cd /opt if [[ -f /opt/hoarder/.env ]] && [[ ! -f /etc/hoarder/hoarder.env ]]; then @@ -46,7 +46,7 @@ function update_script() { mv /opt/hoarder/.env /etc/hoarder/hoarder.env fi rm -rf /opt/hoarder - wget -q "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv hoarder-${RELEASE} /opt/hoarder cd /opt/hoarder/apps/web @@ -82,4 +82,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/homarr.sh b/ct/homarr.sh index 5d495bd7a..cc25251fc 100644 --- a/ct/homarr.sh +++ b/ct/homarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: MickLesk (Canbiz) | Co-Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,20 +28,20 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi -if [[ -f /opt/homarr/database/db.sqlite ]]; then + if [[ -f /opt/homarr/database/db.sqlite ]]; then msg_error "Old Homarr detected due to existing database file (/opt/homarr/database/db.sqlite)." msg_error "Update not supported. Refer to:" msg_error " - https://github.com/community-scripts/ProxmoxVE/discussions/1551" msg_error " - https://homarr.dev/docs/getting-started/after-the-installation/#importing-a-zip-from-version-before-100" exit 1 -fi -if [[ ! -f /opt/run_homarr.sh ]]; then - msg_info "Detected outdated and missing service files" - msg_error "Warning - The port of homarr changed from 3000 to 7575" - $STD apt-get install -y nginx gettext openssl gpg - sed -i '/^NODE_ENV=/d' /opt/homarr/.env && echo "NODE_ENV='production'" >> /opt/homarr/.env - sed -i '/^DB_DIALECT=/d' /opt/homarr/.env && echo "DB_DIALECT='sqlite'" >> /opt/homarr/.env - cat <<'EOF' >/opt/run_homarr.sh + fi + if [[ ! -f /opt/run_homarr.sh ]]; then + msg_info "Detected outdated and missing service files" + msg_error "Warning - The port of homarr changed from 3000 to 7575" + $STD apt-get install -y nginx gettext openssl gpg + sed -i '/^NODE_ENV=/d' /opt/homarr/.env && echo "NODE_ENV='production'" >>/opt/homarr/.env + sed -i '/^DB_DIALECT=/d' /opt/homarr/.env && echo "DB_DIALECT='sqlite'" >>/opt/homarr/.env + cat <<'EOF' >/opt/run_homarr.sh #!/bin/bash set -a source /opt/homarr/.env @@ -63,9 +63,9 @@ node apps/websocket/wssServer.cjs & node apps/nextjs/server.js & PID=$! wait $PID EOF - chmod +x /opt/run_homarr.sh - rm /etc/systemd/system/homarr.service - cat </etc/systemd/system/homarr.service + chmod +x /opt/run_homarr.sh + rm /etc/systemd/system/homarr.service + cat </etc/systemd/system/homarr.service [Unit] Description=Homarr Service After=network.target @@ -77,10 +77,10 @@ ExecStart=/opt/run_homarr.sh [Install] WantedBy=multi-user.target EOF - msg_ok "Updated Services" - systemctl daemon-reload -fi - RELEASE=$(curl -s https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + msg_ok "Updated Services" + systemctl daemon-reload + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services (Patience)" @@ -117,7 +117,7 @@ node apps/nextjs/server.js & PID=$! wait $PID EOF chmod +x /opt/run_homarr.sh - wget -q "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip rm -rf v${RELEASE}.zip rm -rf /opt/homarr @@ -138,9 +138,9 @@ EOF mkdir -p /opt/homarr/apps/cli cp /opt/homarr/packages/cli/cli.cjs /opt/homarr/apps/cli/cli.cjs - echo $'#!/bin/bash\ncd /opt/homarr/apps/cli && node ./cli.cjs "$@"' > /usr/bin/homarr + echo $'#!/bin/bash\ncd /opt/homarr/apps/cli && node ./cli.cjs "$@"' >/usr/bin/homarr chmod +x /usr/bin/homarr - + mkdir /opt/homarr/build cp ./node_modules/better-sqlite3/build/Release/better_sqlite3.node ./build/better_sqlite3.node echo "${RELEASE}" >/opt/${APP}_version.txt @@ -167,4 +167,4 @@ 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}:7575${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7575${CL}" \ No newline at end of file diff --git a/ct/homeassistant-core.sh b/ct/homeassistant-core.sh index 85f181a9c..041f3d87e 100644 --- a/ct/homeassistant-core.sh +++ b/ct/homeassistant-core.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tteck (tteckster) | Co-Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -100,7 +100,7 @@ function update_script() { msg_ok "Installed FileBrowser" msg_info "Creating Service" - cat < /etc/systemd/system/filebrowser.service + cat </etc/systemd/system/filebrowser.service [Unit] Description=Filebrowser After=network-online.target diff --git a/ct/homeassistant.sh b/ct/homeassistant.sh index 6cd1946a5..ad7e68846 100644 --- a/ct/homeassistant.sh +++ b/ct/homeassistant.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -109,4 +109,4 @@ 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}HA: http://${IP}:8123${CL}" -echo -e "${TAB}${GATEWAY}${BGN}Portainer: http://${IP}:9443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}Portainer: http://${IP}:9443${CL}" \ No newline at end of file diff --git a/ct/homebox.sh b/ct/homebox.sh index b9f837925..5efc70a4d 100644 --- a/ct/homebox.sh +++ b/ct/homebox.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -26,7 +26,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop homebox @@ -37,7 +37,7 @@ function update_script() { rm -rf homebox_bak rm -rf /tmp/homebox.tar.gz mv homebox homebox_bak - wget -qO /tmp/homebox.tar.gz https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz +curl -fsSL "https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz" -o "/tmp/homebox.tar.gz" tar -xzf /tmp/homebox.tar.gz -C /opt chmod +x /opt/homebox echo "${RELEASE}" >/opt/${APP}_version.txt diff --git a/ct/homebridge.sh b/ct/homebridge.sh index 7a24f0a85..35825d004 100644 --- a/ct/homebridge.sh +++ b/ct/homebridge.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/homepage.sh b/ct/homepage.sh index 1afb55d80..7675d3230 100644 --- a/ct/homepage.sh +++ b/ct/homepage.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -36,7 +36,7 @@ function update_script() { fi fi LOCAL_IP=$(hostname -I | awk '{print $1}') - RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Updating Homepage to v${RELEASE} (Patience)" systemctl stop homepage @@ -53,7 +53,7 @@ function update_script() { export NEXT_TELEMETRY_DISABLED=1 $STD pnpm build if [[ ! -f /opt/homepage/.env ]]; then - echo "HOMEPAGE_ALLOWED_HOSTS=localhost:3000,${LOCAL_IP}:3000" > /opt/homepage/.env + echo "HOMEPAGE_ALLOWED_HOSTS=localhost:3000,${LOCAL_IP}:3000" >/opt/homepage/.env fi systemctl start homepage echo "${RELEASE}" >/opt/${APP}_version.txt diff --git a/ct/homer.sh b/ct/homer.sh index eee1bc12a..4b97e9423 100644 --- a/ct/homer.sh +++ b/ct/homer.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -40,7 +40,7 @@ function update_script() { msg_info "Updating ${APP}" rm -rf /opt/homer/* cd /opt/homer - wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip +curl -fsSL "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip" -O $(basename "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip") $STD unzip homer.zip msg_ok "Updated ${APP}" diff --git a/ct/hyperhdr.sh b/ct/hyperhdr.sh index f9c74d2a9..54a0a2779 100644 --- a/ct/hyperhdr.sh +++ b/ct/hyperhdr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/hyperion.sh b/ct/hyperion.sh index 3d4671da4..2e86e5815 100644 --- a/ct/hyperion.sh +++ b/ct/hyperion.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/influxdb.sh b/ct/influxdb.sh index 1ef738aca..c887777f0 100644 --- a/ct/influxdb.sh +++ b/ct/influxdb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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} and Port 8888 for v1 or Port 8086 (v2)${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP} and Port 8888 for v1 or Port 8086 (v2)${CL}" \ No newline at end of file diff --git a/ct/inspircd.sh b/ct/inspircd.sh index 1b55493d9..30955a655 100644 --- a/ct/inspircd.sh +++ b/ct/inspircd.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop inspircd @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb +curl -fsSL "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb" -O $(basename "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb") $STD apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y echo "${RELEASE}" >"/opt/${APP}_version.txt" msg_ok "Updated ${APP} to v${RELEASE}" diff --git a/ct/inventree.sh b/ct/inventree.sh index b8a6a7e67..f300b10ed 100644 --- a/ct/inventree.sh +++ b/ct/inventree.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -42,4 +42,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/iobroker.sh b/ct/iobroker.sh index 9a8591897..fc8f68cbf 100644 --- a/ct/iobroker.sh +++ b/ct/iobroker.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/iventoy.sh b/ct/iventoy.sh index 63cbe3ea6..7ee842aeb 100644 --- a/ct/iventoy.sh +++ b/ct/iventoy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/jackett.sh b/ct/jackett.sh index c3fe4672a..de6104eb4 100644 --- a/ct/jackett.sh +++ b/ct/jackett.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,10 +27,10 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) + RELEASE=$(curl -fsSL https://github.com/Jackett/Jackett/releases/latest | grep "title>Release" | cut -d " " -f 4) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP}" - wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz + curl -fsSL "https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz" -O $(basename "https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz") systemctl stop jackett rm -rf /opt/Jackett tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt diff --git a/ct/jellyfin.sh b/ct/jellyfin.sh index 4e22f6e84..1c2bbb0d4 100644 --- a/ct/jellyfin.sh +++ b/ct/jellyfin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -42,4 +42,4 @@ 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}:8096${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8096${CL}" \ No newline at end of file diff --git a/ct/jellyseerr.sh b/ct/jellyseerr.sh index 3d44e6fba..3d14eeee8 100644 --- a/ct/jellyseerr.sh +++ b/ct/jellyseerr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -24,7 +24,7 @@ function update_script() { check_container_storage check_container_resources - if [[ ! -d /opt/jellyseerr ]]; then + if [[ ! -d /opt/jellyseerr ]]; then msg_error "No ${APP} Installation Found!" exit fi @@ -38,7 +38,7 @@ function update_script() { $STD apt-get update $STD apt-get -y upgrade msg_ok "Updating Packages" - + msg_info "Cleaning up" apt-get -y autoremove apt-get -y autoclean @@ -50,11 +50,11 @@ function update_script() { pnpm_current=$(pnpm --version 2>/dev/null) pnpm_desired=$(grep -Po '"pnpm":\s*"\K[^"]+' /opt/jellyseerr/package.json) - + if [ -z "$pnpm_current" ]; then msg_error "pnpm not found. Installing version $pnpm_desired..." $STD npm install -g pnpm@"$pnpm_desired" - elif ! node -e "const semver = require('semver'); process.exit(semver.satisfies('$pnpm_current', '$pnpm_desired') ? 0 : 1)" ; then + elif ! node -e "const semver = require('semver'); process.exit(semver.satisfies('$pnpm_current', '$pnpm_desired') ? 0 : 1)"; then msg_error "Updating pnpm from version $pnpm_current to $pnpm_desired..." $STD npm install -g pnpm@"$pnpm_desired" else @@ -103,4 +103,4 @@ 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}:5055${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5055${CL}" \ No newline at end of file diff --git a/ct/jenkins.sh b/ct/jenkins.sh index 6341716ae..627117cc7 100644 --- a/ct/jenkins.sh +++ b/ct/jenkins.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/jupyternotebook.sh b/ct/jupyternotebook.sh index 3e7641fb1..6a8a415b7 100644 --- a/ct/jupyternotebook.sh +++ b/ct/jupyternotebook.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Dave-code-creater (Tan Dat, Ta) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -23,7 +23,7 @@ function update_script() { header_info check_container_storage check_container_resources - + msg_info "Updating ${APP} LXC" $STD apt-get update $STD apt-get install -y upgrade @@ -39,4 +39,4 @@ 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}:8888${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8888${CL}" \ No newline at end of file diff --git a/ct/kavita.sh b/ct/kavita.sh index 2ffd78c83..77c22574a 100644 --- a/ct/kavita.sh +++ b/ct/kavita.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { fi msg_info "Updating $APP LXC" systemctl stop kavita - RELEASE=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') $STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner rm -rf Kavita/config cp -r Kavita/* /opt/Kavita diff --git a/ct/keycloak.sh b/ct/keycloak.sh index 437bf5c47..bfd03786a 100644 --- a/ct/keycloak.sh +++ b/ct/keycloak.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -33,10 +33,10 @@ function update_script() { $STD apt-get update $STD apt-get -y upgrade - RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') msg_info "Updating Keycloak to v$RELEASE" cd /opt - wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz +curl -fsSL "https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz" -O $(basename "https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz") mv keycloak keycloak.old tar -xzf keycloak-$RELEASE.tar.gz cp -r keycloak.old/conf keycloak-$RELEASE @@ -61,4 +61,4 @@ 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}:8080/admin${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/admin${CL}" \ No newline at end of file diff --git a/ct/kimai.sh b/ct/kimai.sh index 888d9c904..2bd460649 100644 --- a/ct/kimai.sh +++ b/ct/kimai.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') BACKUP_DIR="/opt/kimai_backup" if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then @@ -44,7 +44,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" rm -rf /opt/kimai - wget -q "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv kimai-${RELEASE} /opt/kimai [ -d "$BACKUP_DIR/var" ] && cp -r "$BACKUP_DIR/var" /opt/kimai/ @@ -87,4 +87,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/koillection.sh b/ct/koillection.sh index 31af04542..a6e772578 100644 --- a/ct/koillection.sh +++ b/ct/koillection.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/benjaminjonard/koillection/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/benjaminjonard/koillection/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt mv /opt/koillection/ /opt/koillection-backup - wget -q "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip") unzip -q "${RELEASE}.zip" mv "/opt/koillection-${RELEASE}" /opt/koillection cd /opt/koillection @@ -75,4 +75,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/kometa.sh b/ct/kometa.sh index 757ad69db..a77e6a778 100644 --- a/ct/kometa.sh +++ b/ct/kometa.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/kometa_version.txt)" ]] || [[ ! -f /opt/kometa_version.txt ]]; then msg_info "Updating $APP" msg_info "Stopping $APP" @@ -38,8 +38,8 @@ function update_script() { msg_info "Updating $APP to ${RELEASE}" cd /tmp temp_file=$(mktemp) - RELEASE=$(curl -s https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') - wget -q "https://github.com/Kometa-Team/Kometa/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" + RELEASE=$(curl -fsSL https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/Kometa-Team/Kometa/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" cp /opt/kometa/config/config.yml /opt rm -rf /opt/kometa diff --git a/ct/komga.sh b/ct/komga.sh index 4ebe5289e..6e96b60c7 100644 --- a/ct/komga.sh +++ b/ct/komga.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: madelyn (DysfunctionalProgramming) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,14 +28,14 @@ function update_script() { exit fi msg_info "Updating ${APP}" - RELEASE=$(curl -s https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop komga msg_ok "Stopped ${APP}" msg_info "Updating ${APP} to ${RELEASE}" - wget -q "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar" +curl -fsSL "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar" -O $(basename "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar") rm -rf /opt/komga/komga.jar mv -f komga-${RELEASE}.jar /opt/komga/komga.jar echo "${RELEASE}" >/opt/${APP}_version.txt @@ -58,4 +58,4 @@ 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}:25600${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:25600${CL}" \ No newline at end of file diff --git a/ct/komodo.sh b/ct/komodo.sh index 56a140132..1f5aecc84 100644 --- a/ct/komodo.sh +++ b/ct/komodo.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -48,9 +48,9 @@ function update_script() { } GITHUB_URL="https://raw.githubusercontent.com/mbecker20/komodo/main/compose/${COMPOSE_FILE}" - wget -q -O "/opt/komodo/${COMPOSE_FILE}" "$GITHUB_URL" || { +curl -fsSL "$GITHUB_URL" || {" -o ""/opt/komodo/${COMPOSE_FILE}"" msg_error "Failed to download ${COMPOSE_FILE} from GitHub!" - mv "/opt/komodo/${BACKUP_FILE}" "/opt/komodo/${COMPOSE_FILE}" + mv "/opt/komodo/${BACKUP_FILE}" "/opt/komodo/${COMPOSE_FILE}" exit 1 } @@ -65,4 +65,4 @@ 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}:9120${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9120${CL}" \ No newline at end of file diff --git a/ct/kubo.sh b/ct/kubo.sh index 84875d69a..805b580c7 100644 --- a/ct/kubo.sh +++ b/ct/kubo.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: ulmentflam # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,12 +27,12 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) + RELEASE=$(curl -fsSL https://github.com/ipfs/kubo/releases/latest | grep "title>Release" | cut -d " " -f 4) if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Updating $APP LXC" $STD apt-get update $STD apt-get -y upgrade - wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" + curl -fsSL "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" -O $(basename "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz") tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local systemctl restart ipfs.service echo "${RELEASE}" >/opt/${APP}_version.txt @@ -51,4 +51,4 @@ 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}:5001/webui${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5001/webui${CL}" diff --git a/ct/lazylibrarian.sh b/ct/lazylibrarian.sh index 0a3475026..7214740ec 100644 --- a/ct/lazylibrarian.sh +++ b/ct/lazylibrarian.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: MountyMapleSyrup (MountyMapleSyrup) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/lidarr.sh b/ct/lidarr.sh index 0ce059c28..087c006f5 100644 --- a/ct/lidarr.sh +++ b/ct/lidarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/linkwarden.sh b/ct/linkwarden.sh index 0f05a88f7..22667c2f1 100644 --- a/ct/linkwarden.sh +++ b/ct/linkwarden.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -26,7 +26,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop linkwarden @@ -36,7 +36,7 @@ function update_script() { $STD apt-get install -y build-essential $STD curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y source $HOME/.cargo/env - echo 'export PATH=/usr/local/cargo/bin:$PATH' >> /etc/profile + echo 'export PATH=/usr/local/cargo/bin:$PATH' >>/etc/profile source /etc/profile $STD cargo install monolith msg_ok "Updated Rust" @@ -45,8 +45,8 @@ function update_script() { cd /opt mv /opt/linkwarden/.env /opt/.env rm -rf /opt/linkwarden - RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - wget -q "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" + RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv linkwarden-${RELEASE:1} /opt/linkwarden cd /opt/linkwarden @@ -79,4 +79,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/listmonk.sh b/ct/listmonk.sh index 60b2acd80..e3ccb5fca 100644 --- a/ct/listmonk.sh +++ b/ct/listmonk.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop listmonk @@ -38,7 +38,7 @@ function update_script() { cd /opt mv /opt/listmonk/ /opt/listmonk-backup mkdir /opt/listmonk/ - wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz" +curl -fsSL "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz") tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk mv /opt/listmonk-backup/config.toml /opt/listmonk/config.toml mv /opt/listmonk-backup/uploads /opt/listmonk/uploads diff --git a/ct/lldap.sh b/ct/lldap.sh index 6001d45cd..8bc8596e6 100644 --- a/ct/lldap.sh +++ b/ct/lldap.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: remz1337 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/lubelogger.sh b/ct/lubelogger.sh index c356bf437..1050a3f70 100644 --- a/ct/lubelogger.sh +++ b/ct/lubelogger.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE_TRIMMED=$(echo "${RELEASE}" | tr -d ".") if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip +curl -fsSL "https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip" -O $(basename "https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip") mkdir -p /tmp/lubeloggerData/data cp /opt/lubelogger/appsettings.json /tmp/lubeloggerData/appsettings.json cp -r /opt/lubelogger/data/ /tmp/lubeloggerData/ @@ -78,4 +78,4 @@ 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}:5000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}" \ No newline at end of file diff --git a/ct/mafl.sh b/ct/mafl.sh index 52a51d017..c62f62880 100644 --- a/ct/mafl.sh +++ b/ct/mafl.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,10 +27,10 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Updating Mafl to v${RELEASE} (Patience)" systemctl stop mafl - wget -q https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz +curl -fsSL "https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz") tar -xzf v${RELEASE}.tar.gz cp -r mafl-${RELEASE}/* /opt/mafl/ rm -rf mafl-${RELEASE} diff --git a/ct/magicmirror.sh b/ct/magicmirror.sh index 88ca03b1d..109962c10 100644 --- a/ct/magicmirror.sh +++ b/ct/magicmirror.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/MagicMirrorOrg/MagicMirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/MagicMirrorOrg/MagicMirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]]; then touch /opt/${APP}_version.txt; fi if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" @@ -45,7 +45,7 @@ function update_script() { fi cp -r /opt/magicmirror/modules /opt/magicmirror-backup temp_file=$(mktemp) - wget -q "https://github.com/MagicMirrorOrg/MagicMirror/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +curl -fsSL "https://github.com/MagicMirrorOrg/MagicMirror/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" rm -rf /opt/magicmirror mv MagicMirror-${RELEASE} /opt/magicmirror @@ -79,4 +79,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/mariadb.sh b/ct/mariadb.sh index 4ffd6657d..e13b93ad7 100644 --- a/ct/mariadb.sh +++ b/ct/mariadb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/matterbridge.sh b/ct/matterbridge.sh index c31c77c05..ebb47eecd 100644 --- a/ct/matterbridge.sh +++ b/ct/matterbridge.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/mattermost.sh b/ct/mattermost.sh index 910d00bd2..8ca535d24 100644 --- a/ct/mattermost.sh +++ b/ct/mattermost.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Kaedon Cleland-Host (dracentis) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:8065${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8065${CL}" \ No newline at end of file diff --git a/ct/mediamtx.sh b/ct/mediamtx.sh index 128581588..96a854a71 100644 --- a/ct/mediamtx.sh +++ b/ct/mediamtx.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/medusa.sh b/ct/medusa.sh index a2421816d..57da15c31 100644 --- a/ct/medusa.sh +++ b/ct/medusa.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/memos.sh b/ct/memos.sh index bb80994a0..2ce3f4676 100644 --- a/ct/memos.sh +++ b/ct/memos.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -57,4 +57,4 @@ 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}:9030${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9030${CL}" \ No newline at end of file diff --git a/ct/meshcentral.sh b/ct/meshcentral.sh index 621182dc7..f1b95cc34 100644 --- a/ct/meshcentral.sh +++ b/ct/meshcentral.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/metube.sh b/ct/metube.sh index 42107309f..048fc9388 100644 --- a/ct/metube.sh +++ b/ct/metube.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/minio.sh b/ct/minio.sh index 754fd9f20..adbf76d3e 100644 --- a/ct/minio.sh +++ b/ct/minio.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}') + RELEASE=$(curl -fsSL https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop minio @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" mv /usr/local/bin/minio /usr/local/bin/minio_bak - wget -q https://dl.min.io/server/minio/release/linux-amd64/minio +curl -fsSL "https://dl.min.io/server/minio/release/linux-amd64/minio" -O $(basename "https://dl.min.io/server/minio/release/linux-amd64/minio") mv minio /usr/local/bin/ chmod +x /usr/local/bin/minio echo "${RELEASE}" >/opt/${APP}_version.txt @@ -63,4 +63,4 @@ 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}:9000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000${CL}" \ No newline at end of file diff --git a/ct/mongodb.sh b/ct/mongodb.sh index 96f2f5368..e6080cf22 100644 --- a/ct/mongodb.sh +++ b/ct/mongodb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -39,4 +39,4 @@ build_container description msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" \ No newline at end of file diff --git a/ct/monica.sh b/ct/monica.sh index 7c84f2197..2cb2ed348 100644 --- a/ct/monica.sh +++ b/ct/monica.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/monicahq/monica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/monicahq/monica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt mv /opt/monica/ /opt/monica-backup - wget -q "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2" +curl -fsSL "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2" -O $(basename "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2") tar -xjf "monica-v${RELEASE}.tar.bz2" mv "/opt/monica-v${RELEASE}" /opt/monica cd /opt/monica/ @@ -73,4 +73,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/motioneye.sh b/ct/motioneye.sh index 2cf0490d0..9d6d67eab 100644 --- a/ct/motioneye.sh +++ b/ct/motioneye.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/mqtt.sh b/ct/mqtt.sh index 4594fa8d6..43077c889 100644 --- a/ct/mqtt.sh +++ b/ct/mqtt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/mylar3.sh b/ct/mylar3.sh index 070ed9ae8..17801f410 100644 --- a/ct/mylar3.sh +++ b/ct/mylar3.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: davalanche # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -25,11 +25,11 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/mylar3/mylar3/releases/latest | jq -r '.tag_name') + RELEASE=$(curl -fsSL https://api.github.com/repos/mylar3/mylar3/releases/latest | jq -r '.tag_name') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} to ${RELEASE}" rm -rf /opt/mylar3/* /opt/mylar3/.* - wget -qO- https://github.com/mylar3/mylar3/archive/refs/tags/${RELEASE}.tar.gz | tar -xz --strip-components=1 -C /opt/mylar3 +curl -fsSL "https://github.com/mylar3/mylar3/archive/refs/tags/${RELEASE}.tar.gz" | tar -xz --strip-components=1 -C /opt/mylar3 systemctl restart mylar3 echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated ${APP} to ${RELEASE}" diff --git a/ct/myspeed.sh b/ct/myspeed.sh index 1d6cd221d..17bff14ee 100644 --- a/ct/myspeed.sh +++ b/ct/myspeed.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/gnmyt/myspeed/releases/latest -O - | grep "title>Release" | cut -d " " -f 5) + RELEASE=$(curl -fsSL https://github.com/gnmyt/myspeed/releases/latest | grep "title>Release" | cut -d " " -f 5) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP} Service" @@ -38,7 +38,7 @@ function update_script() { cd /opt rm -rf myspeed_bak mv myspeed myspeed_bak - wget -q https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip + curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -O $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip") unzip -q MySpeed-$RELEASE.zip -d myspeed cd myspeed $STD npm install @@ -67,4 +67,4 @@ 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}:5216${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5216${CL}" diff --git a/ct/mysql.sh b/ct/mysql.sh index c35ac114f..99cec08d7 100644 --- a/ct/mysql.sh +++ b/ct/mysql.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}${IP}:3306${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}:3306${CL}" \ No newline at end of file diff --git a/ct/n8n.sh b/ct/n8n.sh index 06bc93428..671e0c3b6 100644 --- a/ct/n8n.sh +++ b/ct/n8n.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/navidrome.sh b/ct/navidrome.sh index a271f556a..98f868f48 100644 --- a/ct/navidrome.sh +++ b/ct/navidrome.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,14 +27,14 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/navidrome/navidrome/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/navidrome/navidrome/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Stopping ${APP}" systemctl stop navidrome msg_ok "Stopped Navidrome" msg_info "Updating to v${RELEASE}" cd /opt - wget -q https://github.com/navidrome/navidrome/releases/download/v${RELEASE}/navidrome_${RELEASE}_linux_amd64.tar.gz -O Navidrome.tar.gz +curl -fsSL "https://github.com/navidrome/navidrome/releases/download/v${RELEASE}/navidrome_${RELEASE}_linux_amd64.tar.gz" -o "Navidrome.tar.gz" $STD tar -xvzf Navidrome.tar.gz -C /opt/navidrome/ chmod +x /opt/navidrome/navidrome msg_ok "Updated ${APP}" @@ -54,4 +54,4 @@ 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}:4533${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:4533${CL}" \ No newline at end of file diff --git a/ct/neo4j.sh b/ct/neo4j.sh index 3049d9e70..8f933ca5e 100644 --- a/ct/neo4j.sh +++ b/ct/neo4j.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: havardthom # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/netbox.sh b/ct/netbox.sh index 6db15b373..c726edc03 100644 --- a/ct/netbox.sh +++ b/ct/netbox.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/netbox-community/netbox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/netbox-community/netbox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" mv /opt/netbox/ /opt/netbox-backup cd /opt - wget -q "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv /opt/netbox-${RELEASE}/ /opt/netbox/ diff --git a/ct/nextcloudpi.sh b/ct/nextcloudpi.sh index 687cf46dd..ab778c05e 100644 --- a/ct/nextcloudpi.sh +++ b/ct/nextcloudpi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/nextpvr.sh b/ct/nextpvr.sh index 76065b975..8fa28e6a5 100644 --- a/ct/nextpvr.sh +++ b/ct/nextpvr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT @@ -39,7 +39,7 @@ function update_script() { msg_info "Updating ${APP}" cd /opt - wget -q https://nextpvr.com/nextpvr-helper.deb +curl -fsSL "https://nextpvr.com/nextpvr-helper.deb" -O $(basename "https://nextpvr.com/nextpvr-helper.deb") $STD dpkg -i nextpvr-helper.deb msg_ok "Updated ${APP}" diff --git a/ct/nginxproxymanager.sh b/ct/nginxproxymanager.sh index d363cfb62..a15804823 100644 --- a/ct/nginxproxymanager.sh +++ b/ct/nginxproxymanager.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -27,13 +27,13 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - if ! command -v pnpm &> /dev/null; then + if ! command -v pnpm &>/dev/null; then msg_info "Installing pnpm" #export NODE_OPTIONS=--openssl-legacy-provider $STD npm install -g pnpm@8.15 msg_ok "Installed pnpm" fi - RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | + RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Stopping Services" @@ -51,7 +51,7 @@ function update_script() { msg_ok "Cleaned Old Files" msg_info "Downloading NPM v${RELEASE}" - wget -q https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE} -O - | tar -xz +curl -fsSL "https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE}" -o "- | tar -xz" cd nginx-proxy-manager-${RELEASE} msg_ok "Downloaded NPM v${RELEASE}" @@ -157,4 +157,4 @@ 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}:81${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:81${CL}" \ No newline at end of file diff --git a/ct/nocodb.sh b/ct/nocodb.sh index ff0f882e6..a1fbed916 100644 --- a/ct/nocodb.sh +++ b/ct/nocodb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -31,7 +31,7 @@ function update_script() { systemctl stop nocodb.service cd /opt/nocodb rm -rf nocodb - curl -s http://get.nocodb.com/linux-x64 -o nocodb -L + curl -fsSL http://get.nocodb.com/linux-x64 -o nocodb -L chmod +x nocodb systemctl start nocodb.service msg_ok "Updated Successfully" diff --git a/ct/node-red.sh b/ct/node-red.sh index 8321d7d6a..918ddd591 100644 --- a/ct/node-red.sh +++ b/ct/node-red.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/nodebb.sh b/ct/nodebb.sh index 4b79273a8..48cbec402 100644 --- a/ct/nodebb.sh +++ b/ct/nodebb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -31,7 +31,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop nodebb @@ -60,4 +60,4 @@ 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}:4567${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:4567${CL}" \ No newline at end of file diff --git a/ct/notifiarr.sh b/ct/notifiarr.sh index 0dd171dec..b632d8ed8 100644 --- a/ct/notifiarr.sh +++ b/ct/notifiarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/npmplus.sh b/ct/npmplus.sh index 65bfeb178..2da9a49f0 100644 --- a/ct/npmplus.sh +++ b/ct/npmplus.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -56,4 +56,4 @@ 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}:81${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:81${CL}" \ No newline at end of file diff --git a/ct/ntfy.sh b/ct/ntfy.sh index 81bfcec4d..f29090683 100644 --- a/ct/ntfy.sh +++ b/ct/ntfy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/nxwitness.sh b/ct/nxwitness.sh index ebcbe69cd..9477bad19 100644 --- a/ct/nxwitness.sh +++ b/ct/nxwitness.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,8 +28,8 @@ function update_script() { exit fi BASE_URL="https://updates.networkoptix.com/default/index.html" - RELEASE=$(curl -s "$BASE_URL" | grep -oP '(?<=)[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?=)' | head -n 1) - DETAIL_PAGE=$(curl -s "$BASE_URL#note_$RELEASE") + RELEASE=$(curl -fsSL "$BASE_URL" | grep -oP '(?<=)[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?=)' | head -n 1) + DETAIL_PAGE=$(curl -fsSL "$BASE_URL#note_$RELEASE") DOWNLOAD_URL=$(echo "$DETAIL_PAGE" | grep -oP "https://updates.networkoptix.com/default/$RELEASE/linux/nxwitness-server-[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-linux_x64\.deb" | head -n 1) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" cd /tmp - wget -q "$DOWNLOAD_URL" -O "nxwitness-server-$RELEASE-linux_x64.deb" +curl -fsSL "$DOWNLOAD_URL" -o ""nxwitness-server-$RELEASE-linux_x64.deb"" export DEBIAN_FRONTEND=noninteractive export DEBCONF_NOWARNINGS=yes $STD dpkg -i nxwitness-server-$RELEASE-linux_x64.deb @@ -67,4 +67,4 @@ 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}:7001/${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7001/${CL}" \ No newline at end of file diff --git a/ct/nzbget.sh b/ct/nzbget.sh index 57279e4ec..c49e51046 100644 --- a/ct/nzbget.sh +++ b/ct/nzbget.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: havardthom # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/octoprint.sh b/ct/octoprint.sh index f701fd6be..3af677cfa 100644 --- a/ct/octoprint.sh +++ b/ct/octoprint.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/ollama.sh b/ct/ollama.sh index 7604c22b8..5c3a0a2b1 100644 --- a/ct/ollama.sh +++ b/ct/ollama.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: havardthom # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/omada.sh b/ct/omada.sh index 80fd2ed9a..2d96be248 100644 --- a/ct/omada.sh +++ b/ct/omada.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -33,10 +33,10 @@ function update_script() { if ! lscpu | grep -q 'avx'; then MONGODB_VERSION="4.4" msg_error "No AVX detected: TP-Link Canceled Support for Old MongoDB for Debian 12\n https://www.tp-link.com/baltic/support/faq/4160/" - exit 1 + exit 1 fi - wget -qO- https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg + curl -fsSL "https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg echo "deb [signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg] http://repo.mongodb.org/apt/debian $(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)/mongodb-org/${MONGODB_VERSION} main" >/etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list $STD apt-get update $STD apt-get install -y --only-upgrade mongodb-org @@ -45,24 +45,24 @@ function update_script() { msg_info "Checking if right Azul Zulu Java is installed" java_version=$(java -version 2>&1 | awk -F[\"_] '/version/ {print $2}') if [[ "$java_version" =~ ^1\.8\.* ]]; then - $STD apt-get remove --purge -y zulu8-jdk - $STD apt-get -y install zulu21-jre-headless - msg_ok "Updated Azul Zulu Java to 21" + $STD apt-get remove --purge -y zulu8-jdk + $STD apt-get -y install zulu21-jre-headless + msg_ok "Updated Azul Zulu Java to 21" else - msg_ok "Azul Zulu Java 21 already installed" + msg_ok "Azul Zulu Java 21 already installed" fi msg_info "Updating Omada Controller" - latest_url=$(curl -s "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1) + latest_url=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1) latest_version=$(basename "$latest_url") if [ -z "${latest_version}" ]; then msg_error "It seems that the server (tp-link.com) might be down. Please try again at a later time." exit fi - wget -qL ${latest_url} + curl -fsSL "${latest_url}" -O export DEBIAN_FRONTEND=noninteractive - $STD dpkg -i ${latest_version} + $STD dpkg -i ${latest_version} rm -rf ${latest_version} msg_ok "Updated Omada Controller" } diff --git a/ct/ombi.sh b/ct/ombi.sh index 40560871c..664ce0e4e 100644 --- a/ct/ombi.sh +++ b/ct/ombi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,14 +27,14 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -sL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + RELEASE=$(curl -fsSLL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop ombi msg_ok "Stopped ${APP}" msg_info "Updating ${APP} to ${RELEASE}" - wget -q https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz +curl -fsSL "https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz" -O $(basename "https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz") tar -xzf linux-x64.tar.gz -C /opt/ombi rm -rf linux-x64.tar.gz echo "${RELEASE}" >/opt/${APP}_version.txt diff --git a/ct/omv.sh b/ct/omv.sh index 7a34ae6c6..e64fbfced 100644 --- a/ct/omv.sh +++ b/ct/omv.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/onedev.sh b/ct/onedev.sh index e1f706d06..dcfb62ea5 100644 --- a/ct/onedev.sh +++ b/ct/onedev.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - GITHUB_RELEASE=$(curl -s https://api.github.com/repos/theonedev/onedev/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + GITHUB_RELEASE=$(curl -fsSL https://api.github.com/repos/theonedev/onedev/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${GITHUB_RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop onedev @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${GITHUB_RELEASE}" cd /opt - wget -q https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz +curl -fsSL "https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz" -O $(basename "https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz") tar -xzf onedev-latest.tar.gz $STD /opt/onedev-latest/bin/upgrade.sh /opt/onedev RELEASE=$(cat /opt/onedev/release.properties | grep "version" | cut -d'=' -f2) diff --git a/ct/opengist.sh b/ct/opengist.sh index 7b946bc16..cab1fa771 100644 --- a/ct/opengist.sh +++ b/ct/opengist.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Jonathan (jd-apprentice) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,18 +27,18 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/thomiceli/opengist/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/thomiceli/opengist/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop opengist.service msg_ok "Stopped Service" - + msg_info "Updating ${APP} to v${RELEASE}" $STD apt-get update $STD apt-get -y upgrade cd /opt mv /opt/opengist /opt/opengist-backup - wget -q "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz" +curl -fsSL "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz" -O $(basename "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz") tar -xzf opengist${RELEASE}-linux-amd64.tar.gz mv /opt/opengist-backup/config.yml /opt/opengist/config.yml chmod +x /opt/opengist/opengist @@ -69,4 +69,4 @@ 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}:6157${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6157${CL}" \ No newline at end of file diff --git a/ct/openhab.sh b/ct/openhab.sh index 24dc9d540..56567addb 100644 --- a/ct/openhab.sh +++ b/ct/openhab.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -42,4 +42,4 @@ msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} Access it using one of the following URLs:${CL}" echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8443${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/openobserve.sh b/ct/openobserve.sh index 67dc65917..d702c194b 100644 --- a/ct/openobserve.sh +++ b/ct/openobserve.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { fi msg_info "Updating $APP" systemctl stop openobserve - LATEST=$(curl -sL https://api.github.com/repos/openobserve/openobserve/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + LATEST=$(curl -fsSLL https://api.github.com/repos/openobserve/openobserve/releases/latest | grep '"tag_name":' | cut -d'"' -f4) tar zxvf <(curl -fsSL https://github.com/openobserve/openobserve/releases/download/$LATEST/openobserve-${LATEST}-linux-amd64.tar.gz) -C /opt/openobserve systemctl start openobserve msg_ok "Updated $APP" diff --git a/ct/openwebui.sh b/ct/openwebui.sh index 734fcaffb..63cd2395b 100644 --- a/ct/openwebui.sh +++ b/ct/openwebui.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: havardthom # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -76,4 +76,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/outline.sh b/ct/outline.sh index a303be7e9..7d4817fc9 100644 --- a/ct/outline.sh +++ b/ct/outline.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services" systemctl stop outline @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" temp_file=$(mktemp) rm -rf /opt/outline/node_modules - wget -q "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file cp -rf outline-${RELEASE}/* /opt/outline cd /opt/outline @@ -68,4 +68,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/overseerr.sh b/ct/overseerr.sh index a408543f5..4938c194c 100644 --- a/ct/overseerr.sh +++ b/ct/overseerr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/owncast.sh b/ct/owncast.sh index c4f4660bd..f6360810f 100644 --- a/ct/owncast.sh +++ b/ct/owncast.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/pairdrop.sh b/ct/pairdrop.sh index dc19c2337..e5c7eae6a 100644 --- a/ct/pairdrop.sh +++ b/ct/pairdrop.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/paperless-ai.sh b/ct/paperless-ai.sh index 60cd99faf..3b2202a22 100644 --- a/ct/paperless-ai.sh +++ b/ct/paperless-ai.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop paperless-ai @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" cd /opt mv /opt/paperless-ai /opt/paperless-ai_bak - wget -q "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv paperless-ai-${RELEASE} /opt/paperless-ai mkdir -p /opt/paperless-ai/data @@ -67,4 +67,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/paperless-gpt.sh b/ct/paperless-gpt.sh index be6760ba9..7fe592801 100644 --- a/ct/paperless-gpt.sh +++ b/ct/paperless-gpt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No Paperless-GPT installation found!" exit 1 fi - RELEASE=$(curl -s https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop paperless-gpt @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating Paperless-GPT to ${RELEASE}" temp_file=$(mktemp) - wget -q "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file rm -rf /opt/paperless-gpt mv paperless-gpt-${RELEASE} /opt/paperless-gpt @@ -71,4 +71,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/paperless-ngx.sh b/ct/paperless-ngx.sh index df89acd28..eecceed3f 100644 --- a/ct/paperless-ngx.sh +++ b/ct/paperless-ngx.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -24,7 +24,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/paperless-ngx/paperless-ngx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/paperless-ngx/paperless-ngx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 2 \ "1" "Update Paperless-ngx to $RELEASE" ON \ @@ -38,7 +38,7 @@ function update_script() { if [[ "$(gs --version 2>/dev/null)" != "10.04.0" ]]; then msg_info "Updating Ghostscript (Patience)" cd /tmp - wget -q https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz +curl -fsSL "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz" -O $(basename "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz") tar -xzf ghostscript-10.04.0.tar.gz cd ghostscript-10.04.0 $STD ./configure @@ -53,7 +53,7 @@ function update_script() { msg_info "Updating to ${RELEASE}" cd ~ - wget -q https://github.com/paperless-ngx/paperless-ngx/releases/download/$RELEASE/paperless-ngx-$RELEASE.tar.xz +curl -fsSL "https://github.com/paperless-ngx/paperless-ngx/releases/download/$RELEASE/paperless-ngx-$RELEASE.tar.xz" -O $(basename "https://github.com/paperless-ngx/paperless-ngx/releases/download/$RELEASE/paperless-ngx-$RELEASE.tar.xz") tar -xf paperless-ngx-$RELEASE.tar.xz cp -r /opt/paperless/paperless.conf paperless-ngx/ cp -r paperless-ngx/* /opt/paperless/ diff --git a/ct/part-db.sh b/ct/part-db.sh index a2df14f21..b0c4422e9 100644 --- a/ct/part-db.sh +++ b/ct/part-db.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Part-DB/Part-DB-server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Part-DB/Part-DB-server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" cd /opt mv /opt/partdb/ /opt/partdb-backup - wget -q "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb @@ -77,4 +77,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/paymenter.sh b/ct/paymenter.sh index 9bab05f48..5fda4a92b 100644 --- a/ct/paymenter.sh +++ b/ct/paymenter.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Nícolas Pastorello (opastorello) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') + RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} to ${RELEASE}" echo "${RELEASE}" >/opt/${APP}_version.txt @@ -48,4 +48,4 @@ 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}:80${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}" \ No newline at end of file diff --git a/ct/peanut.sh b/ct/peanut.sh index fc18a49a4..755a466d1 100644 --- a/ct/peanut.sh +++ b/ct/peanut.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) | Co-Author: remz1337 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,11 +27,11 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -sL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + RELEASE=$(curl -fsSLL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating $APP to ${RELEASE}" systemctl stop peanut - wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE} +curl -fsSL "https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE}" -o "peanut.tar.gz" tar -xzf peanut.tar.gz -C /opt/peanut --strip-components 1 rm peanut.tar.gz cd /opt/peanut diff --git a/ct/pelican-panel.sh b/ct/pelican-panel.sh index bb7467511..1eb8751dd 100644 --- a/ct/pelican-panel.sh +++ b/ct/pelican-panel.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" cd /opt/pelican-panel @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cp -r /opt/pelican-panel/.env /opt/ rm -rf * .* - wget -q "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" +curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -O $(basename "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz") tar -xzf "panel.tar.gz" mv /opt/.env /opt/pelican-panel/ $STD composer install --no-dev --optimize-autoloader --no-interaction @@ -73,4 +73,4 @@ 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}/installer${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/installer${CL}" \ No newline at end of file diff --git a/ct/pelican-wings.sh b/ct/pelican-wings.sh index ff871626a..35b0f46fd 100644 --- a/ct/pelican-wings.sh +++ b/ct/pelican-wings.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop wings @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" rm /usr/local/bin/wings - wget -q -O /usr/local/bin/wings "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" +curl -fsSL "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings" chmod u+x /usr/local/bin/wings echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated $APP to v${RELEASE}" diff --git a/ct/petio.sh b/ct/petio.sh index 5d9c39d29..55539dd36 100644 --- a/ct/petio.sh +++ b/ct/petio.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { fi msg_info "Updating $APP" systemctl stop petio.service - wget https://petio.tv/releases/latest -O petio-latest.zip + curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip unzip petio-latest.zip -d /opt/Petio systemctl start petio.service msg_ok "Updated $APP" @@ -42,4 +42,4 @@ 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}:7777${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7777${CL}" diff --git a/ct/pf2etools.sh b/ct/pf2etools.sh index c4f6de890..2ba92eec1 100644 --- a/ct/pf2etools.sh +++ b/ct/pf2etools.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: TheRealVira # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/Pf2eToolsOrg/Pf2eTools/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Pf2eToolsOrg/Pf2eTools/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f "/opt/${APP}_version.txt" ]]; then msg_info "Updating System" $STD apt-get update @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating ${APP}" cd /opt - wget -q "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip rm -rf "/opt/${APP}" mv ${APP}-${RELEASE:1} /opt/${APP} @@ -66,4 +66,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/photoprism.sh b/ct/photoprism.sh index 0187e06d9..093543a06 100644 --- a/ct/photoprism.sh +++ b/ct/photoprism.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -33,7 +33,7 @@ function update_script() { msg_info "Updating PhotoPrism" $STD apt-get install -y libvips42 - wget -q -cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xzf - -C /opt/photoprism --strip-components=1 +curl -fsSL "-cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xzf - -C /opt/photoprism --strip-components=1" -O $(basename "-cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xzf - -C /opt/photoprism --strip-components=1") msg_ok "Updated PhotoPrism" msg_info "Starting PhotoPrism" diff --git a/ct/phpipam.sh b/ct/phpipam.sh index fa6b8f634..2780fade1 100644 --- a/ct/phpipam.sh +++ b/ct/phpipam.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt mv /opt/phpipam/ /opt/phpipam-backup - wget -q "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" +curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -O $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip") unzip -q "phpipam-v${RELEASE}.zip" cp /opt/phpipam-backup/config.php /opt/phpipam echo "${RELEASE}" >/opt/${APP}_version.txt @@ -64,4 +64,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/pialert.sh b/ct/pialert.sh index 12ea5ec77..81cd4ed81 100644 --- a/ct/pialert.sh +++ b/ct/pialert.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - bash -c "$(wget -qLO - https://github.com/leiweibau/Pi.Alert/raw/main/install/pialert_update.sh)" -s --lxc + bash -c "$(curl -fsSL https://github.com/leiweibau/Pi.Alert/raw/main/install/pialert_update.sh)" -s --lxc msg_ok "Updated $APP" exit } @@ -39,4 +39,4 @@ 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}/pialert${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/pialert${CL}" diff --git a/ct/pihole.sh b/ct/pihole.sh index 3559c557f..ce99bd3c4 100644 --- a/ct/pihole.sh +++ b/ct/pihole.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}/admin${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/admin${CL}" \ No newline at end of file diff --git a/ct/pingvin.sh b/ct/pingvin.sh index 0283015ae..8cd8a6680 100644 --- a/ct/pingvin.sh +++ b/ct/pingvin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -20,50 +20,49 @@ color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/pingvin-share ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - - RELEASE=$(curl -s https://api.github.com/repos/stonith404/pingvin-share/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') - if [[ ! -f /opt/pingvin_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/pingvin_version.txt)" ]]; then - - msg_info "Stopping Pingvin Share" - systemctl stop pm2-root.service - msg_ok "Stopped Pingvin Share" - - msg_info "Updating Pingvin Share to v${RELEASE}" - cd /opt - wget -q "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" - unzip -q v${RELEASE}.zip - cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share - cd /opt/pingvin-share - cd backend - $STD npm install - $STD npm run build - cd ../frontend - $STD npm install - $STD npm run build - echo "${RELEASE}" >"/opt/pingvin_version.txt" - rm -rf /opt/v${RELEASE}.zip - rm -rf /opt/pingvin-share-${RELEASE} - msg_ok "Updated Pingvin Share to v${RELEASE}" + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/pingvin-share ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi - msg_info "Starting Pingvin Share" - systemctl start pm2-root.service - msg_ok "Started Pingvin Share" + RELEASE=$(curl -fsSL https://api.github.com/repos/stonith404/pingvin-share/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + if [[ ! -f /opt/pingvin_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/pingvin_version.txt)" ]]; then - msg_ok "Updated Successfully" - exit + msg_info "Stopping Pingvin Share" + systemctl stop pm2-root.service + msg_ok "Stopped Pingvin Share" + + msg_info "Updating Pingvin Share to v${RELEASE}" + cd /opt +curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip") + unzip -q v${RELEASE}.zip + cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share + cd /opt/pingvin-share + cd backend + $STD npm install + $STD npm run build + cd ../frontend + $STD npm install + $STD npm run build + echo "${RELEASE}" >"/opt/pingvin_version.txt" + rm -rf /opt/v${RELEASE}.zip + rm -rf /opt/pingvin-share-${RELEASE} + msg_ok "Updated Pingvin Share to v${RELEASE}" + + msg_info "Starting Pingvin Share" + systemctl start pm2-root.service + msg_ok "Started Pingvin Share" + + msg_ok "Updated Successfully" + exit else msg_ok "No update required. Pingvin Share is already at v${RELEASE}." fi } - start build_container description @@ -71,4 +70,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/plant-it.sh b/ct/plant-it.sh index c95e12ba9..d83909893 100644 --- a/ct/plant-it.sh +++ b/ct/plant-it.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,16 +29,16 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/MDeLuise/plant-it/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/MDeLuise/plant-it/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop plant-it msg_ok "Stopped $APP" msg_info "Updating $APP to v${RELEASE}" - wget -q -O /opt/plant-it/server.jar "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/server.jar" +curl -fsSL "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/server.jar" -o "/opt/plant-it/server.jar" cd /opt/plant-it/frontend - wget -q https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz +curl -fsSL "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz" -O $(basename "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz") tar -xzf client.tar.gz rm -f client.tar.gz echo "${RELEASE}" >/opt/${APP}_version.txt @@ -61,4 +61,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/plex.sh b/ct/plex.sh index f742e127d..d321797c8 100644 --- a/ct/plex.sh +++ b/ct/plex.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -40,7 +40,7 @@ function update_script() { fi if [ "$UPD" == "2" ]; then set +e - bash -c "$(wget -qO - https://raw.githubusercontent.com/mrworf/plexupdate/master/extras/installer.sh)" + bash -c "$(curl -fsSL https://raw.githubusercontent.com/mrworf/plexupdate/master/extras/installer.sh)" exit fi } diff --git a/ct/pocketbase.sh b/ct/pocketbase.sh index c3ca11533..84b36ab38 100644 --- a/ct/pocketbase.sh +++ b/ct/pocketbase.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -49,4 +49,4 @@ 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}:8080/_/${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/_/${CL}" \ No newline at end of file diff --git a/ct/pocketid.sh b/ct/pocketid.sh index d4d20b6e5..2722c6ec9 100755 --- a/ct/pocketid.sh +++ b/ct/pocketid.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Snarkenfaugister # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -45,12 +45,12 @@ function update_script() { cp /opt/pocket-id/backend/.env /opt/backend.env cp /opt/pocket-id/frontend/.env /opt/frontend.env rm -r /opt/pocket-id - wget -q "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv pocket-id-${RELEASE} /opt/pocket-id mv /opt/data /opt/pocket-id/backend/data - mv /opt/backend.env /opt/pocket-id/backend/.env - mv /opt/frontend.env /opt/pocket-id/frontend/.env + mv /opt/backend.env /opt/pocket-id/backend/.env + mv /opt/frontend.env /opt/pocket-id/frontend/.env cd /opt/pocket-id/backend/cmd go build -o ../pocket-id-backend @@ -87,4 +87,4 @@ msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} Configure your reverse proxy to point to:${BGN} ${IP}:80${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}https://{PUBLIC_URL}/login/setup${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://{PUBLIC_URL}/login/setup${CL}" \ No newline at end of file diff --git a/ct/podman-homeassistant.sh b/ct/podman-homeassistant.sh index 0f7b3ea3c..c42d5dc31 100644 --- a/ct/podman-homeassistant.sh +++ b/ct/podman-homeassistant.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,66 +14,69 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors function update_script() { -header_info -check_container_storage -check_container_resources - if [[ ! -f /etc/systemd/system/homeassistant.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi + header_info + check_container_storage + check_container_resources + if [[ ! -f /etc/systemd/system/homeassistant.service ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "UPDATE" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 4 \ - "1" "Update system and containers" ON \ - "2" "Install HACS" OFF \ - "3" "Install FileBrowser" OFF \ - "4" "Remove ALL Unused Images" OFF \ - 3>&1 1>&2 2>&3) + "1" "Update system and containers" ON \ + "2" "Install HACS" OFF \ + "3" "Install FileBrowser" OFF \ + "4" "Remove ALL Unused Images" OFF \ + 3>&1 1>&2 2>&3) -if [ "$UPD" == "1" ]; then - msg_info "Updating ${APP} LXC" - $STD apt-get update - $STD apt-get -y upgrade - msg_ok "Updated Successfully" + if [ "$UPD" == "1" ]; then + msg_info "Updating ${APP} LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated Successfully" - msg_info "Updating All Containers\n" - CONTAINER_LIST="${1:-$(podman ps -q)}" - for container in ${CONTAINER_LIST}; do - CONTAINER_IMAGE="$(podman inspect --format "{{.Config.Image}}" --type container ${container})" - RUNNING_IMAGE="$(podman inspect --format "{{.Image}}" --type container "${container}")" - podman pull "${CONTAINER_IMAGE}" - LATEST_IMAGE="$(podman inspect --format "{{.Id}}" --type image "${CONTAINER_IMAGE}")" - if [[ "${RUNNING_IMAGE}" != "${LATEST_IMAGE}" ]]; then - echo "Updating ${container} image ${CONTAINER_IMAGE}" - systemctl restart homeassistant - fi - done - msg_ok "All containers updated." - exit -fi -if [ "$UPD" == "2" ]; then - msg_info "Installing Home Assistant Community Store (HACS)" - $STD apt update - $STD apt install unzip - cd /var/lib/containers/storage/volumes/hass_config/_data - $STD bash <(curl -fsSL https://get.hacs.xyz) - msg_ok "Installed Home Assistant Community Store (HACS)" - echo -e "\n Reboot Home Assistant and clear browser cache then Add HACS integration.\n" - exit -fi -if [ "$UPD" == "3" ]; then - IP=$(hostname -I | awk '{print $1}') - msg_info "Installing FileBrowser" - $STD curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash - $STD filebrowser config init -a '0.0.0.0' - $STD filebrowser config set -a '0.0.0.0' - $STD filebrowser users add admin helper-scripts.com --perm.admin - msg_ok "Installed FileBrowser" + msg_info "Updating All Containers\n" + CONTAINER_LIST="${1:-$(podman ps -q)}" + for container in ${CONTAINER_LIST}; do + CONTAINER_IMAGE="$(podman inspect --format "{{.Config.Image}}" --type container ${container})" + RUNNING_IMAGE="$(podman inspect --format "{{.Image}}" --type container "${container}")" + podman pull "${CONTAINER_IMAGE}" + LATEST_IMAGE="$(podman inspect --format "{{.Id}}" --type image "${CONTAINER_IMAGE}")" + if [[ "${RUNNING_IMAGE}" != "${LATEST_IMAGE}" ]]; then + echo "Updating ${container} image ${CONTAINER_IMAGE}" + systemctl restart homeassistant + fi + done + msg_ok "All containers updated." + exit + fi + if [ "$UPD" == "2" ]; then + msg_info "Installing Home Assistant Community Store (HACS)" + $STD apt update + $STD apt install unzip + cd /var/lib/containers/storage/volumes/hass_config/_data + $STD bash <(curl -fsSL https://get.hacs.xyz) + msg_ok "Installed Home Assistant Community Store (HACS)" + echo -e "\n Reboot Home Assistant and clear browser cache then Add HACS integration.\n" + exit + fi + if [ "$UPD" == "3" ]; then + IP=$(hostname -I | awk '{print $1}') + msg_info "Installing FileBrowser" + $STD curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash + $STD filebrowser config init -a '0.0.0.0' + $STD filebrowser config set -a '0.0.0.0' + $STD filebrowser users add admin helper-scripts.com --perm.admin + msg_ok "Installed FileBrowser" - msg_info "Creating Service" - service_path="/etc/systemd/system/filebrowser.service" - echo "[Unit] + msg_info "Creating Service" + service_path="/etc/systemd/system/filebrowser.service" + echo "[Unit] Description=Filebrowser After=network-online.target [Service] @@ -89,14 +92,14 @@ if [ "$UPD" == "3" ]; then msg_ok "Completed Successfully!\n" echo -e "FileBrowser should be reachable by going to the following URL. ${BL}http://$IP:8080${CL} admin|helper-scripts.com\n" - exit -fi -if [ "$UPD" == "4" ]; then - msg_info "Removing ALL Unused Images" - podman image prune -a -f - msg_ok "Removed ALL Unused Images" - exit -fi + exit + fi + if [ "$UPD" == "4" ]; then + msg_info "Removing ALL Unused Images" + podman image prune -a -f + msg_ok "Removed ALL Unused Images" + exit + fi } diff --git a/ct/podman.sh b/ct/podman.sh index cf885e062..6ae648ad9 100644 --- a/ct/podman.sh +++ b/ct/podman.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/postgresql.sh b/ct/postgresql.sh index fb79e5f59..9f7fdde22 100644 --- a/ct/postgresql.sh +++ b/ct/postgresql.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/privatebin.sh b/ct/privatebin.sh index d44d99897..300d09f2c 100644 --- a/ct/privatebin.sh +++ b/ct/privatebin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Nícolas Pastorello (opastorello) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,12 +27,12 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/PrivateBin/PrivateBin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/PrivateBin/PrivateBin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} to v${RELEASE}" echo "${RELEASE}" >/opt/${APP}_version.txt cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak - wget -q "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip rm -rf /opt/privatebin/* mv PrivateBin-${RELEASE}/* /opt/privatebin/ @@ -56,4 +56,4 @@ 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}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}${CL}" \ No newline at end of file diff --git a/ct/projectsend.sh b/ct/projectsend.sh index bf8e3d91b..7015adba0 100644 --- a/ct/projectsend.sh +++ b/ct/projectsend.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/projectsend/projectsend/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/projectsend/projectsend/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop apache2 @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" +curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -O $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip") unzip -o -q "projectsend-r${RELEASE}.zip" -d projectsend chown -R www-data:www-data /opt/projectsend chmod -R 775 /opt/projectsend @@ -63,4 +63,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/prometheus-alertmanager.sh b/ct/prometheus-alertmanager.sh index 47180a93e..1b248df94 100755 --- a/ct/prometheus-alertmanager.sh +++ b/ct/prometheus-alertmanager.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Andy Grunwald (andygrunwald) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/prometheus/alertmanager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/prometheus/alertmanager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop prometheus-alertmanager @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz +curl -fsSL "https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz" -O $(basename "https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz") tar -xf alertmanager-${RELEASE}.linux-amd64.tar.gz cp -rf alertmanager-${RELEASE}.linux-amd64/alertmanager alertmanager-${RELEASE}.linux-amd64/amtool /usr/local/bin/ rm -rf alertmanager-${RELEASE}.linux-amd64 alertmanager-${RELEASE}.linux-amd64.tar.gz diff --git a/ct/prometheus-paperless-ngx-exporter.sh b/ct/prometheus-paperless-ngx-exporter.sh index e01a79e70..27c145785 100755 --- a/ct/prometheus-paperless-ngx-exporter.sh +++ b/ct/prometheus-paperless-ngx-exporter.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Andy Grunwald (andygrunwald) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/hansmi/prometheus-paperless-exporter/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/hansmi/prometheus-paperless-exporter/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop prometheus-paperless-ngx-exporter @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz +curl -fsSL "https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz") tar -xf prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz cp -rf prometheus-paperless-exporter_${RELEASE}_linux_amd64/prometheus-paperless-exporter /usr/local/bin/ rm -rf prometheus-paperless-exporter_${RELEASE}_linux_amd64/ prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz diff --git a/ct/prometheus-pve-exporter.sh b/ct/prometheus-pve-exporter.sh index 78b034aa3..c21a08aef 100644 --- a/ct/prometheus-pve-exporter.sh +++ b/ct/prometheus-pve-exporter.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Andy Grunwald (andygrunwald) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/prometheus.sh b/ct/prometheus.sh index d072f46ed..29d7c19ad 100644 --- a/ct/prometheus.sh +++ b/ct/prometheus.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/prometheus/prometheus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop prometheus @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz +curl -fsSL "https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz" -O $(basename "https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz") tar -xf prometheus-${RELEASE}.linux-amd64.tar.gz cp -rf prometheus-${RELEASE}.linux-amd64/prometheus prometheus-${RELEASE}.linux-amd64/promtool /usr/local/bin/ rm -rf prometheus-${RELEASE}.linux-amd64 prometheus-${RELEASE}.linux-amd64.tar.gz diff --git a/ct/prowlarr.sh b/ct/prowlarr.sh index 5dbbfc267..3b4309e2b 100644 --- a/ct/prowlarr.sh +++ b/ct/prowlarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/proxmox-backup-server.sh b/ct/proxmox-backup-server.sh index e51a68d98..cd51b8c44 100644 --- a/ct/proxmox-backup-server.sh +++ b/ct/proxmox-backup-server.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -23,11 +23,14 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -e /usr/sbin/proxmox-backup-manager ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - msg_info "Updating $APP LXC" - $STD apt-get update - $STD apt-get -y upgrade - msg_ok "Updated $APP LXC" + if [[ ! -e /usr/sbin/proxmox-backup-manager ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + msg_info "Updating $APP LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated $APP LXC" exit } @@ -38,4 +41,4 @@ 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}:8007${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8007${CL}" \ No newline at end of file diff --git a/ct/proxmox-datacenter-manager.sh b/ct/proxmox-datacenter-manager.sh index ea3627bad..c8adda7e9 100644 --- a/ct/proxmox-datacenter-manager.sh +++ b/ct/proxmox-datacenter-manager.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -23,11 +23,14 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -e /usr/sbin/proxmox-datacenter-manager-admin ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - msg_info "Updating $APP LXC" - $STD apt-get update - $STD apt-get -y upgrade - msg_ok "Updated $APP LXC" + if [[ ! -e /usr/sbin/proxmox-datacenter-manager-admin ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + msg_info "Updating $APP LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated $APP LXC" exit } @@ -38,4 +41,4 @@ 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}:8443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8443${CL}" \ No newline at end of file diff --git a/ct/proxmox-mail-gateway.sh b/ct/proxmox-mail-gateway.sh index 30b1656a3..07f66ba4a 100644 --- a/ct/proxmox-mail-gateway.sh +++ b/ct/proxmox-mail-gateway.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: thost96 (thost96) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -23,7 +23,10 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -e /usr/bin/pmgproxy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi + if [[ ! -e /usr/bin/pmgproxy ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi msg_info "Updating ${APP}" $STD apt-get update $STD apt-get -y upgrade @@ -38,4 +41,4 @@ 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}:8006/${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8006/${CL}" \ No newline at end of file diff --git a/ct/ps5-mqtt.sh b/ct/ps5-mqtt.sh index 8978e4ee9..f91cb2bc2 100644 --- a/ct/ps5-mqtt.sh +++ b/ct/ps5-mqtt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: liecno # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/FunkeyFlo/ps5-mqtt/releases/latest | jq -r '.tag_name') + RELEASE=$(curl -fsSL https://api.github.com/repos/FunkeyFlo/ps5-mqtt/releases/latest | jq -r '.tag_name') if [[ "${RELEASE}" != "$(cat /opt/ps5-mqtt_version.txt)" ]]; then msg_info "Stopping service" @@ -37,12 +37,12 @@ function update_script() { msg_ok "Stopped service" msg_info "Updating PS5-MQTT to ${RELEASE}" - wget -P /tmp -q https://github.com/FunkeyFlo/ps5-mqtt/archive/refs/tags/${RELEASE}.tar.gz + curl -fsSL https://github.com/FunkeyFlo/ps5-mqtt/archive/refs/tags/${RELEASE}.tar.gz -o /tmp/${RELEASE}.tar.gz rm -rf /opt/ps5-mqtt tar zxf /tmp/${RELEASE}.tar.gz -C /opt mv /opt/ps5-mqtt-* /opt/ps5-mqtt rm /tmp/${RELEASE}.tar.gz - echo ${RELEASE} > /opt/ps5-mqtt_version.txt + echo ${RELEASE} >/opt/ps5-mqtt_version.txt msg_ok "Updated PS5-MQTT" msg_info "Building new PS5-MQTT version" @@ -55,7 +55,7 @@ function update_script() { systemctl start ps5-mqtt msg_ok "Started service" else - msg_ok "No update required. ${APP} is already at ${RELEASE}" + msg_ok "No update required. ${APP} is already at ${RELEASE}" fi exit diff --git a/ct/pterodactyl-panel.sh b/ct/pterodactyl-panel.sh index b637f083d..d28b51704 100644 --- a/ct/pterodactyl-panel.sh +++ b/ct/pterodactyl-panel.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/pterodactyl/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/pterodactyl/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" cd /opt/pterodactyl-panel @@ -37,7 +37,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cp -r /opt/pterodactyl-panel/.env /opt/ rm -rf * .* - wget -q "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz" +curl -fsSL "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz" -O $(basename "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz") tar -xzf "panel.tar.gz" mv /opt/.env /opt/pterodactyl-panel/ $STD composer install --no-dev --optimize-autoloader --no-interaction @@ -71,4 +71,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/pterodactyl-wings.sh b/ct/pterodactyl-wings.sh index 509d3bdb4..3a1aa6526 100644 --- a/ct/pterodactyl-wings.sh +++ b/ct/pterodactyl-wings.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: bvdberg01 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/pterodactyl/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/pterodactyl/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop wings @@ -35,7 +35,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" rm /usr/local/bin/wings - wget -q -O /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/download/v${RELEASE}/wings_linux_amd64" +curl -fsSL "https://github.com/pterodactyl/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings" chmod u+x /usr/local/bin/wings echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated $APP to v${RELEASE}" @@ -55,4 +55,4 @@ build_container description msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" \ No newline at end of file diff --git a/ct/qbittorrent.sh b/ct/qbittorrent.sh index 7d2bbbccf..cbf333bde 100644 --- a/ct/qbittorrent.sh +++ b/ct/qbittorrent.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tteck (tteckster) | Co-Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -36,7 +36,7 @@ function update_script() { sed -i 's@ExecStart=/usr/bin/qbittorrent-nox@ExecStart=/opt/qbittorrent/qbittorrent-nox@g' /etc/systemd/system/qbittorrent-nox.service systemctl daemon-reload fi - FULLRELEASE=$(curl -s https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + FULLRELEASE=$(curl -fsSL https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(echo $FULLRELEASE | cut -c 9-13) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" @@ -67,4 +67,4 @@ 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}:8090${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}" \ No newline at end of file diff --git a/ct/rabbitmq.sh b/ct/rabbitmq.sh index 317fc0e63..164a3eb52 100644 --- a/ct/rabbitmq.sh +++ b/ct/rabbitmq.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/radarr.sh b/ct/radarr.sh index 43db75ed0..946bcee51 100644 --- a/ct/radarr.sh +++ b/ct/radarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/radicale.sh b/ct/radicale.sh index 5589abbf9..d34b8dd8c 100644 --- a/ct/radicale.sh +++ b/ct/radicale.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/rdtclient.sh b/ct/rdtclient.sh index 1737e5b81..d2eb394c1 100755 --- a/ct/rdtclient.sh +++ b/ct/rdtclient.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,7 +38,7 @@ function update_script() { fi mkdir -p rdtc-backup cp -R /opt/rdtc/appsettings.json rdtc-backup/ - wget -q https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip +curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -O $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip") unzip -oqq RealDebridClient.zip -d /opt/rdtc cp -R rdtc-backup/appsettings.json /opt/rdtc/ msg_ok "Updated ${APP}" diff --git a/ct/readarr.sh b/ct/readarr.sh index 0bb63efe6..45683b738 100644 --- a/ct/readarr.sh +++ b/ct/readarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/readeck.sh b/ct/readeck.sh index 44c3023cd..918356efd 100644 --- a/ct/readeck.sh +++ b/ct/readeck.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,11 +28,11 @@ function update_script() { exit fi msg_info "Updating ${APP}" - LATEST=$(curl -s https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1) + LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1) systemctl stop readeck.service rm -rf /opt/readeck/readeck cd /opt/readeck - wget -q -O readeck https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64 +curl -fsSL "https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64" -o "readeck" chmod a+x readeck systemctl start readeck.service msg_ok "Updated ${APP}" diff --git a/ct/recyclarr.sh b/ct/recyclarr.sh index b1f5eede4..ac6216d67 100644 --- a/ct/recyclarr.sh +++ b/ct/recyclarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MrYadro # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { fi msg_info "Updating ${APP}" - wget -q $(curl -s https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4)") tar -C /usr/local/bin -xJf recyclarr*.tar.xz rm -rf recyclarr*.tar.xz msg_ok "Updated ${APP}" diff --git a/ct/redis.sh b/ct/redis.sh index a4f562cb2..f2165d81d 100644 --- a/ct/redis.sh +++ b/ct/redis.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/revealjs.sh b/ct/revealjs.sh index 5870d581c..ac7247255 100644 --- a/ct/revealjs.sh +++ b/ct/revealjs.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/hakimel/reveal.js/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/hakimel/reveal.js/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop revealjs @@ -36,10 +36,10 @@ function update_script() { msg_info "Updating $APP to ${RELEASE}" temp_file=$(mktemp) - wget -q "https://github.com/hakimel/reveal.js/archive/refs/tags/${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/hakimel/reveal.js/archive/refs/tags/${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file rm -rf /opt/revealjs/node_modules/* - cp /opt/revealjs/index.html /opt + cp /opt/revealjs/index.html /opt cp -rf reveal.js-${RELEASE}/* /opt/revealjs cd /opt/revealjs $STD npm install @@ -71,4 +71,4 @@ 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}:8000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}" \ No newline at end of file diff --git a/ct/rtsptoweb.sh b/ct/rtsptoweb.sh index 98cb65b6a..6aaf09b61 100644 --- a/ct/rtsptoweb.sh +++ b/ct/rtsptoweb.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/runtipi.sh b/ct/runtipi.sh index 3a7fff532..65baf5a08 100644 --- a/ct/runtipi.sh +++ b/ct/runtipi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/rustdeskserver.sh b/ct/rustdeskserver.sh index 16e306126..b83dfc016 100644 --- a/ct/rustdeskserver.sh +++ b/ct/rustdeskserver.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/rustdesk_version.txt)" ]] || [[ ! -f /opt/rustdesk_version.txt ]]; then msg_info "Stopping $APP" systemctl stop rustdesk-hbbr @@ -37,9 +37,9 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" TEMPDIR=$(mktemp -d) - wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR - wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR - wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR") +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR") +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR") $STD dpkg -i $TEMPDIR/*.deb msg_ok "Updated $APP to v${RELEASE}" @@ -62,4 +62,4 @@ 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}${IP}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}${CL}" \ No newline at end of file diff --git a/ct/sabnzbd.sh b/ct/sabnzbd.sh index 71455afbf..6676354a8 100644 --- a/ct/sabnzbd.sh +++ b/ct/sabnzbd.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating $APP to ${RELEASE}" systemctl stop sabnzbd.service @@ -52,4 +52,4 @@ 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}:7777${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7777${CL}" \ No newline at end of file diff --git a/ct/seafile.sh b/ct/seafile.sh index d6d13a737..e3faf1c29 100644 --- a/ct/seafile.sh +++ b/ct/seafile.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: dave-yap (dave-yap) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/searxng.sh b/ct/searxng.sh index 769aa3497..4596f67d8 100644 --- a/ct/searxng.sh +++ b/ct/searxng.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - if cd /usr/local/searxng/searxng-src && git pull | grep -q 'Already up to date'; then + if cd /usr/local/searxng/searxng-src && git pull | grep -q 'Already up to date'; then msg_ok "There is currently no update available." fi exit @@ -39,4 +39,4 @@ 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}:8888${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8888${CL}" \ No newline at end of file diff --git a/ct/seelf.sh b/ct/seelf.sh index 40d0a47a0..84feae0e5 100644 --- a/ct/seelf.sh +++ b/ct/seelf.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { exit fi - RELEASE=$(curl -s https://api.github.com/repos/YuukanOO/seelf/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/YuukanOO/seelf/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Updating $APP" @@ -40,7 +40,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}. Patience" export PATH=$PATH:/usr/local/go/bin source ~/.bashrc - wget -q "https://github.com/YuukanOO/seelf/archive/refs/tags/v${RELEASE}.tar.gz" +curl -fsSL "https://github.com/YuukanOO/seelf/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/YuukanOO/seelf/archive/refs/tags/v${RELEASE}.tar.gz") tar -xzf v${RELEASE}.tar.gz cp -r seelf-${RELEASE}/ /opt/seelf cd /opt/seelf @@ -72,4 +72,4 @@ 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}:8080${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/semaphore.sh b/ct/semaphore.sh index 2dcf880fc..365ef72f8 100644 --- a/ct/semaphore.sh +++ b/ct/semaphore.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/semaphoreui/semaphore/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/semaphoreui/semaphore/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop semaphore @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" cd /opt - wget -q https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb +curl -fsSL "https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb") $STD dpkg -i semaphore_${RELEASE}_linux_amd64.deb echo "${RELEASE}" >"/opt/${APP}_version.txt" msg_ok "Updated ${APP} to v${RELEASE}" diff --git a/ct/sftpgo.sh b/ct/sftpgo.sh index b1cb00553..54866fdfa 100644 --- a/ct/sftpgo.sh +++ b/ct/sftpgo.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/shinobi.sh b/ct/shinobi.sh index 158f6fefa..a2f29f3df 100644 --- a/ct/shinobi.sh +++ b/ct/shinobi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/silverbullet.sh b/ct/silverbullet.sh index cdfddbd99..b34a694df 100644 --- a/ct/silverbullet.sh +++ b/ct/silverbullet.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Dominik Siebel (dsiebel) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -22,15 +22,18 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /opt/silverbullet ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - RELEASE=$(curl -s https://api.github.com/repos/silverbulletmd/silverbullet/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + if [[ ! -d /opt/silverbullet ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/silverbulletmd/silverbullet/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f "/opt/${APP}_version.txt" || "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop silverbullet msg_ok "Stopped ${APP}" msg_info "Updating ${APP} to v${RELEASE}" - wget -q https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip +curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -O $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip") unzip -q silverbullet-server-linux-x86_64.zip mv silverbullet /opt/silverbullet/bin/ chmod +x /opt/silverbullet/bin/silverbullet @@ -53,4 +56,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/smokeping.sh b/ct/smokeping.sh index 848f8004e..c9ddb1272 100644 --- a/ct/smokeping.sh +++ b/ct/smokeping.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/snipeit.sh b/ct/snipeit.sh index 366ea2867..27e511d6f 100644 --- a/ct/snipeit.sh +++ b/ct/snipeit.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Michel Roegl-Brunner (michelroegl-brunner) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,21 +27,21 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/snipe/snipe-it/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "v([^"]+).*/\1/') + RELEASE=$(curl -fsSL https://api.github.com/repos/snipe/snipe-it/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "v([^"]+).*/\1/') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services" systemctl stop nginx msg_ok "Services Stopped" - + msg_info "Updating ${APP} to v${RELEASE}" $STD apt-get update $STD apt-get -y upgrade mv /opt/snipe-it /opt/snipe-it-backup temp_file=$(mktemp) - wget -q "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file + curl -fsSL "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv snipe-it-${RELEASE} /opt/snipe-it - $STD wget -q "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.zip" + $STD curl -fsSL "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.zip" -O unzip -q v${RELEASE}.zip mv snipe-it-${RELEASE} /opt/snipe-it cp /opt/snipe-it-backup/.env /opt/snipe-it/.env @@ -61,7 +61,7 @@ function update_script() { rm -rf /opt/v${RELEASE}.zip rm -rf /opt/snipe-it-backup msg_ok "Updated ${APP}" - + msg_info "Starting Service" systemctl start nginx msg_ok "Started Service" diff --git a/ct/sonarr.sh b/ct/sonarr.sh index 1b0fe4b2c..7e7260b80 100644 --- a/ct/sonarr.sh +++ b/ct/sonarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { fi msg_info "Updating $APP v4" systemctl stop sonarr.service - wget -q -O SonarrV4.tar.gz 'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64' +curl -fsSL "'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64'" -o "SonarrV4.tar.gz" tar -xzf SonarrV4.tar.gz rm -rf /opt/Sonarr mv Sonarr /opt diff --git a/ct/spoolman.sh b/ct/spoolman.sh index a587e360e..32e249f6b 100644 --- a/ct/spoolman.sh +++ b/ct/spoolman.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(wget -q https://github.com/Donkie/Spoolman/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) + RELEASE=$(curl -fsSL https://github.com/Donkie/Spoolman/releases/latest | grep "title>Release" | cut -d " " -f 4) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP} Service" @@ -38,11 +38,11 @@ function update_script() { cd /opt rm -rf spoolman_bak mv spoolman spoolman_bak - wget -q https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip + curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip" -O $(basename "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip") unzip -q spoolman.zip -d spoolman cd spoolman $STD pip3 install -r requirements.txt - wget -q https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example -O .env + curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env" echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated ${APP} to ${RELEASE}" @@ -68,4 +68,4 @@ 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}:7912${CL}" \ No newline at end of file +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7912${CL}" diff --git a/ct/sqlserver2022.sh b/ct/sqlserver2022.sh index bf5d2c74d..7b76c7037 100644 --- a/ct/sqlserver2022.sh +++ b/ct/sqlserver2022.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Kristian Skov # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}${IP}:1433${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}:1433${CL}" \ No newline at end of file diff --git a/ct/stirling-pdf.sh b/ct/stirling-pdf.sh index fd89aba99..708425952 100644 --- a/ct/stirling-pdf.sh +++ b/ct/stirling-pdf.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -33,8 +33,8 @@ function update_script() { $STD apt-get remove -y ocrmypdf $STD apt-get install -y qpdf fi - RELEASE=$(curl -s https://api.github.com/repos/Stirling-Tools/Stirling-PDF/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') - wget -q https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v$RELEASE.tar.gz + RELEASE=$(curl -fsSL https://api.github.com/repos/Stirling-Tools/Stirling-PDF/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v$RELEASE.tar.gz" -O $(basename "https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v$RELEASE.tar.gz") tar -xzf v$RELEASE.tar.gz cd Stirling-PDF-$RELEASE chmod +x ./gradlew diff --git a/ct/suwayomiserver.sh b/ct/suwayomiserver.sh index 3d3c7b809..e451e4d9a 100644 --- a/ct/suwayomiserver.sh +++ b/ct/suwayomiserver.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,7 +28,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ "${RELEASE}" != "$(cat /opt/suwayomi-server_version.txt)" ]] || [[ ! -f /opt/suwayomi-server_version.txt ]]; then msg_info "Updating $APP" msg_info "Stopping $APP" @@ -36,8 +36,8 @@ function update_script() { msg_ok "Stopped $APP" msg_info "Updating $APP to v${RELEASE}" cd /tmp - URL=$(curl -s https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "browser_download_url" | awk '{print substr($2, 2, length($2)-2) }' | tail -n+2 | head -n 1) - wget -q $URL + URL=$(curl -fsSL https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "browser_download_url" | awk '{print substr($2, 2, length($2)-2) }' | tail -n+2 | head -n 1) +curl -fsSL "$URL" -O $(basename "$URL") $STD dpkg -i /tmp/*.deb msg_ok "Updated $APP to v${RELEASE}" msg_info "Starting $APP" @@ -61,4 +61,4 @@ 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}:4567${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:4567${CL}" \ No newline at end of file diff --git a/ct/syncthing.sh b/ct/syncthing.sh index b7497921e..ef8b0d7d0 100644 --- a/ct/syncthing.sh +++ b/ct/syncthing.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/tandoor.sh b/ct/tandoor.sh index 0508c759a..83cc6c14e 100644 --- a/ct/tandoor.sh +++ b/ct/tandoor.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -55,4 +55,4 @@ 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}:8002${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8002${CL}" \ No newline at end of file diff --git a/ct/tasmoadmin.sh b/ct/tasmoadmin.sh index f091c58ef..a17749d64 100644 --- a/ct/tasmoadmin.sh +++ b/ct/tasmoadmin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/tasmocompiler.sh b/ct/tasmocompiler.sh index 6bbc0b498..858fa510a 100644 --- a/ct/tasmocompiler.sh +++ b/ct/tasmocompiler.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping $APP" systemctl stop tasmocompiler @@ -35,8 +35,8 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" cd /opt rm -rf /opt/tasmocompiler - RELEASE=$(curl -s https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') - wget -q https://github.com/benzino77/tasmocompiler/archive/refs/tags/v${RELEASE}.tar.gz + RELEASE=$(curl -fsSL https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/benzino77/tasmocompiler/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/benzino77/tasmocompiler/archive/refs/tags/v${RELEASE}.tar.gz") tar xzf v${RELEASE}.tar.gz mv tasmocompiler-${RELEASE}/ /opt/tasmocompiler/ cd /opt/tasmocompiler @@ -66,4 +66,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/tautulli.sh b/ct/tautulli.sh index 8ed7bb49b..30ae89607 100644 --- a/ct/tautulli.sh +++ b/ct/tautulli.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/tdarr.sh b/ct/tdarr.sh index 1dcc8eb67..4fc9b2926 100644 --- a/ct/tdarr.sh +++ b/ct/tdarr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/technitiumdns.sh b/ct/technitiumdns.sh index 483d5eb34..d72235d92 100644 --- a/ct/technitiumdns.sh +++ b/ct/technitiumdns.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -30,7 +30,7 @@ function update_script() { msg_info "Updating ${APP}" if ! dpkg -s aspnetcore-runtime-8.0 >/dev/null 2>&1; then - wget -q https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb +curl -fsSL "https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb" -O $(basename "https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb") $STD dpkg -i packages-microsoft-prod.deb $STD apt-get update $STD apt-get install -y aspnetcore-runtime-8.0 diff --git a/ct/teddycloud.sh b/ct/teddycloud.sh index 1e68196dc..68c765fda 100644 --- a/ct/teddycloud.sh +++ b/ct/teddycloud.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Dominik Siebel (dsiebel) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -22,8 +22,11 @@ function update_script() { header_info check_container_storage check_container_resources - if [[ ! -d /opt/teddycloud ]]; then msg_error "No ${APP} Installation Found!"; exit; fi - RELEASE="$(curl -s https://api.github.com/repos/toniebox-reverse-engineering/teddycloud/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')" + if [[ ! -d /opt/teddycloud ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE="$(curl -fsSL https://api.github.com/repos/toniebox-reverse-engineering/teddycloud/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')" VERSION="${RELEASE#tc_v}" if [[ ! -f "/opt/${APP}_version.txt" || "${VERSION}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" @@ -33,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to v${VERSION}" cd /opt mv /opt/teddycloud /opt/teddycloud_bak - wget -q "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" +curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -O $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip") unzip -q -d /opt/teddycloud teddycloud.amd64.release_v${VERSION}.zip cp -R /opt/teddycloud_bak/certs /opt/teddycloud_bak/config /opt/teddycloud_bak/data /opt/teddycloud echo "${VERSION}" >"/opt/${APP}_version.txt" @@ -60,4 +63,4 @@ 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}${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" \ No newline at end of file diff --git a/ct/the-lounge.sh b/ct/the-lounge.sh index 8c77bef0b..e677a1a34 100644 --- a/ct/the-lounge.sh +++ b/ct/the-lounge.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: kristocopani # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -34,7 +34,7 @@ function update_script() { if ! npm list -g node-gyp >/dev/null 2>&1; then $STD npm install -g node-gyp fi - RELEASE=$(curl -s https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop thelounge @@ -43,7 +43,7 @@ function update_script() { msg_info "Updating ${APP} to v${RELEASE}" $STD apt-get install --only-upgrade nodejs cd /opt - wget -q https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb + curl -fsSL "https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb" -O $(basename "https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb") dpkg -i ./thelounge_${RELEASE}_all.deb msg_ok "Updated ${APP} to v${RELEASE}" diff --git a/ct/threadfin.sh b/ct/threadfin.sh index dcff874fa..713a3196a 100644 --- a/ct/threadfin.sh +++ b/ct/threadfin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -29,7 +29,7 @@ function update_script() { fi msg_info "Updating $APP" systemctl stop threadfin.service - wget -q -O /opt/threadfin/threadfin 'https://github.com/Threadfin/Threadfin/releases/latest/download/Threadfin_linux_amd64' +curl -fsSL "'https://github.com/Threadfin/Threadfin/releases/latest/download/Threadfin_linux_amd64'" -o "/opt/threadfin/threadfin" chmod +x /opt/threadfin/threadfin systemctl start threadfin.service msg_ok "Updated $APP" diff --git a/ct/tianji.sh b/ct/tianji.sh index 43e21eede..12c9e7285 100644 --- a/ct/tianji.sh +++ b/ct/tianji.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -26,7 +26,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - if command -v node >/dev/null; then + if command -v node >/dev/null; then NODE_MAJOR=$(/usr/bin/env node -v | grep -oP '^v\K[0-9]+') if [[ "$NODE_MAJOR" != "22" ]]; then $STD apt-get purge -y nodejs @@ -42,17 +42,17 @@ function update_script() { $STD apt-get update $STD apt-get install -y nodejs $STD npm install -g pnpm@9.7.1 - RELEASE=$(curl -s https://api.github.com/repos/msgbyte/tianji/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/msgbyte/tianji/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP} Service" systemctl stop tianji msg_ok "Stopped ${APP} Service" - + msg_info "Updating ${APP} to v${RELEASE}" cd /opt cp /opt/tianji/src/server/.env /opt/.env mv /opt/tianji /opt/tianji_bak - wget -q "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" + curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv tianji-${RELEASE} /opt/tianji cd tianji @@ -68,11 +68,11 @@ function update_script() { $STD pnpm db:migrate:apply echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated ${APP} to v${RELEASE}" - + msg_info "Starting ${APP}" systemctl start tianji msg_ok "Started ${APP}" - + msg_info "Cleaning up" rm -R /opt/v${RELEASE}.zip rm -rf /opt/tianji_bak diff --git a/ct/traccar.sh b/ct/traccar.sh index bdeaeeb64..ef09e90d3 100644 --- a/ct/traccar.sh +++ b/ct/traccar.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/traefik.sh b/ct/traefik.sh index c75d83dcc..40d1ab9e7 100644 --- a/ct/traefik.sh +++ b/ct/traefik.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,10 +27,10 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/traefik/traefik/releases | grep -oP '"tag_name":\s*"v\K[\d.]+?(?=")' | sort -V | tail -n 1) + RELEASE=$(curl -fsSL https://api.github.com/repos/traefik/traefik/releases | grep -oP '"tag_name":\s*"v\K[\d.]+?(?=")' | sort -V | tail -n 1) msg_info "Updating $APP LXC" if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then - wget -q https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz +curl -fsSL "https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz") tar -C /tmp -xzf traefik*.tar.gz mv /tmp/traefik /usr/bin/ rm -rf traefik*.tar.gz diff --git a/ct/transmission.sh b/ct/transmission.sh index a1bf17919..51ae89393 100644 --- a/ct/transmission.sh +++ b/ct/transmission.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/trilium.sh b/ct/trilium.sh index 84103e515..260623153 100644 --- a/ct/trilium.sh +++ b/ct/trilium.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -20,16 +20,16 @@ color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/trilium ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - if [[ ! -f /opt/${APP}_version.txt ]]; then touch /opt/${APP}_version.txt; fi - RELEASE=$(curl -s https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') - if [[ "v${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/trilium ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + if [[ ! -f /opt/${APP}_version.txt ]]; then touch /opt/${APP}_version.txt; fi + RELEASE=$(curl -fsSL https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + if [[ "v${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping ${APP}" systemctl stop trilium sleep 1 @@ -40,7 +40,7 @@ function update_script() { mv /opt/trilium/{db,dump-db} /opt/trilium_backup/ rm -rf /opt/trilium cd /tmp - wget -q https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz +curl -fsSL "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz" -O $(basename "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz") tar -xf TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz mv TriliumNextNotes-Server-$RELEASE-linux-x64 /opt/trilium cp -r /opt/trilium_backup/{db,dump-db} /opt/trilium/ @@ -70,4 +70,4 @@ 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}:8080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" \ No newline at end of file diff --git a/ct/typesense.sh b/ct/typesense.sh index 677f8107c..4bd695d95 100644 --- a/ct/typesense.sh +++ b/ct/typesense.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tlissak | Co-Author MickLesk # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/typesense/typesense/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/typesense/typesense/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} LXC" $STD apt-get update @@ -46,4 +46,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}${IP}:8108${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}:8108${CL}" \ No newline at end of file diff --git a/ct/ubuntu.sh b/ct/ubuntu.sh index c49f7eda4..9958d0d78 100644 --- a/ct/ubuntu.sh +++ b/ct/ubuntu.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/umami.sh b/ct/umami.sh index 8c9274144..d333f052a 100644 --- a/ct/umami.sh +++ b/ct/umami.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/umbrel.sh b/ct/umbrel.sh index 92878d5f2..2ddb797ff 100644 --- a/ct/umbrel.sh +++ b/ct/umbrel.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/unbound.sh b/ct/unbound.sh index 23626bb2b..f1c06329e 100644 --- a/ct/unbound.sh +++ b/ct/unbound.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: wimb0 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/unifi.sh b/ct/unifi.sh index fe36c5798..861f33a1a 100644 --- a/ct/unifi.sh +++ b/ct/unifi.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:8443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8443${CL}" \ No newline at end of file diff --git a/ct/unmanic.sh b/ct/unmanic.sh index dc74a952f..929c3e5a5 100644 --- a/ct/unmanic.sh +++ b/ct/unmanic.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/uptimekuma.sh b/ct/uptimekuma.sh index b13bccc06..903a8d2cc 100644 --- a/ct/uptimekuma.sh +++ b/ct/uptimekuma.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -34,7 +34,7 @@ function update_script() { echo "Installed NPM..." fi fi - LATEST=$(curl -sL https://api.github.com/repos/louislam/uptime-kuma/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + LATEST=$(curl -fsSLL https://api.github.com/repos/louislam/uptime-kuma/releases/latest | grep '"tag_name":' | cut -d'"' -f4) msg_info "Stopping ${APP}" $STD sudo systemctl stop uptime-kuma msg_ok "Stopped ${APP}" @@ -65,4 +65,4 @@ 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}:3001${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3001${CL}" \ No newline at end of file diff --git a/ct/urbackupserver.sh b/ct/urbackupserver.sh index d60372faf..798b38ccf 100644 --- a/ct/urbackupserver.sh +++ b/ct/urbackupserver.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Kristian Skov # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -44,4 +44,4 @@ pct reboot $CTID 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}${IP}:55414${CL}" +echo -e "${TAB}${GATEWAY}${BGN}${IP}:55414${CL}" \ No newline at end of file diff --git a/ct/vaultwarden.sh b/ct/vaultwarden.sh index 3228a398f..27b0a4a40 100644 --- a/ct/vaultwarden.sh +++ b/ct/vaultwarden.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -28,10 +28,10 @@ function update_script() { exit fi - VAULT=$(curl -s https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | + VAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - WVRELEASE=$(curl -s https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest | + WVRELEASE=$(curl -fsSL https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') @@ -112,4 +112,4 @@ 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}:8000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}" \ No newline at end of file diff --git a/ct/victoriametrics.sh b/ct/victoriametrics.sh index 10ef77c40..0da6f86c1 100644 --- a/ct/victoriametrics.sh +++ b/ct/victoriametrics.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_os="debian" var_version="12" var_unprivileged="1" -header_info "$APP" +header_info "$APP" variables color catch_errors @@ -27,35 +27,35 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping $APP" systemctl stop victoriametrics msg_ok "Stopped $APP" - + msg_info "Updating ${APP} to v${RELEASE}" temp_dir=$(mktemp -d) cd $temp_dir - wget -q https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz - wget -q https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz +curl -fsSL "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz" -O $(basename "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz") +curl -fsSL "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz" -O $(basename "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz") find /opt/victoriametrics -maxdepth 1 -type f -executable -delete tar -xf victoria-metrics-linux-amd64-v${RELEASE}.tar.gz -C /opt/victoriametrics tar -xf vmutils-linux-amd64-v${RELEASE}.tar.gz -C /opt/victoriametrics chmod +x /opt/victoriametrics/* echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated $APP to v${RELEASE}" - + msg_info "Starting $APP" systemctl start victoriametrics msg_ok "Started $APP" - + msg_info "Cleaning Up" rm -rf $temp_dir msg_ok "Cleaned" msg_ok "Updated Successfully" - else + else msg_ok "No update required. ${APP} is already at ${RELEASE}" - fi + fi exit } @@ -66,4 +66,4 @@ 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}:8428/vmui${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8428/vmui${CL}" \ No newline at end of file diff --git a/ct/vikunja.sh b/ct/vikunja.sh index a5075b62e..602406e13 100644 --- a/ct/vikunja.sh +++ b/ct/vikunja.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1) + RELEASE=$(curl -fsSL https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop vikunja @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" cd /opt rm -rf /opt/vikunja/vikunja - wget -q "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" +curl -fsSL "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" -O $(basename "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb") export DEBIAN_FRONTEND=noninteractive $STD dpkg -i vikunja-$RELEASE-amd64.deb echo "${RELEASE}" >/opt/${APP}_version.txt @@ -63,4 +63,4 @@ 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}:3456${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3456${CL}" \ No newline at end of file diff --git a/ct/wallos.sh b/ct/wallos.sh index e2ec95070..012389f6a 100644 --- a/ct/wallos.sh +++ b/ct/wallos.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,11 +27,11 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/ellite/Wallos/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/ellite/Wallos/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating ${APP} to ${RELEASE}" cd /opt - wget -q "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip") mkdir -p /opt/logos mv /opt/wallos/db/wallos.db /opt/wallos.db mv /opt/wallos/images/uploads/logos /opt/logos/ diff --git a/ct/wastebin.sh b/ct/wastebin.sh index 49d0c73da..cfe41ecc0 100644 --- a/ct/wastebin.sh +++ b/ct/wastebin.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') # Dirty-Fix 03/2025 for missing APP_version.txt on old installations, set to pre-latest release msg_info "Running Migration" if [[ ! -f /opt/${APP}_version.txt ]]; then @@ -64,7 +64,7 @@ EOF msg_info "Updating Wastebin" temp_file=$(mktemp) - wget -q https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip -O $temp_file +curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file" unzip -o -q $temp_file cp -f wastebin /opt/wastebin/ chmod +x /opt/wastebin/wastebin @@ -92,4 +92,4 @@ 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}:8088${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8088${CL}" \ No newline at end of file diff --git a/ct/watcharr.sh b/ct/watcharr.sh index 73daf7fc3..34969189e 100644 --- a/ct/watcharr.sh +++ b/ct/watcharr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/sbondCo/Watcharr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/sbondCo/Watcharr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Updating $APP" @@ -38,7 +38,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" temp_file=$(mktemp) temp_folder=$(mktemp -d) - wget -q "https://github.com/sbondCo/Watcharr/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +curl -fsSL "https://github.com/sbondCo/Watcharr/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" -C "$temp_folder" rm -f /opt/watcharr/server/watcharr rm -rf /opt/watcharr/server/ui @@ -77,4 +77,4 @@ 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}:3080${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3080${CL}" \ No newline at end of file diff --git a/ct/watchyourlan.sh b/ct/watchyourlan.sh index e6df3ee76..f6d54cf51 100644 --- a/ct/watchyourlan.sh +++ b/ct/watchyourlan.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -30,8 +30,8 @@ function update_script() { msg_info "Updating $APP" systemctl stop watchyourlan.service cp -R /data/config.yaml config.yaml - RELEASE=$(curl -s https://api.github.com/repos/aceberg/WatchYourLAN/releases/latest | grep -o '"tag_name": *"[^"]*"' | cut -d '"' -f 4) - wget -q https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb + RELEASE=$(curl -fsSL https://api.github.com/repos/aceberg/WatchYourLAN/releases/latest | grep -o '"tag_name": *"[^"]*"' | cut -d '"' -f 4) +curl -fsSL "https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb") dpkg -i watchyourlan_${RELEASE}_linux_amd64.deb cp -R config.yaml /data/config.yaml sed -i 's|/etc/watchyourlan/config.yaml|/data/config.yaml|' /lib/systemd/system/watchyourlan.service diff --git a/ct/wavelog.sh b/ct/wavelog.sh index 862d5b944..6a90b3d1b 100644 --- a/ct/wavelog.sh +++ b/ct/wavelog.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Don Locke (DonLocke) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/wavelog/wavelog/releases/latest | grep "tag_name" | cut -d '"' -f 4) + RELEASE=$(curl -fsSL https://api.github.com/repos/wavelog/wavelog/releases/latest | grep "tag_name" | cut -d '"' -f 4) if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Services" systemctl stop apache2 @@ -40,7 +40,7 @@ function update_script() { if [[ -f /opt/wavelog/assets/js/sections/custom.js ]]; then cp /opt/wavelog/assets/js/sections/custom.js /opt/custom.js fi - wget -q "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip rm -rf /opt/wavelog mv wavelog-${RELEASE}/ /opt/wavelog diff --git a/ct/wazuh.sh b/ct/wazuh.sh index f139028a9..18c34ea5d 100644 --- a/ct/wazuh.sh +++ b/ct/wazuh.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2025 community-scripts ORG # Author: Omar Minaya # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -41,4 +41,4 @@ 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}:443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:443${CL}" \ No newline at end of file diff --git a/ct/web-check.sh b/ct/web-check.sh index fe4428fd4..f9a8391ba 100644 --- a/ct/web-check.sh +++ b/ct/web-check.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -38,4 +38,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/wger.sh b/ct/wger.sh index 09f92918f..bcf885068 100644 --- a/ct/wger.sh +++ b/ct/wger.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}') + RELEASE=$(curl -fsSL https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop wger @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating $APP to v${RELEASE}" temp_file=$(mktemp) cd $temp_file - wget -q "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" -O $temp_file +curl -fsSL "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" -o "$temp_file" tar xzf $temp_file cp -rf wger-$RELEASE/* /home/wger/src cd /home/wger/src @@ -69,4 +69,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/whisparr.sh b/ct/whisparr.sh index 42a9d270e..ee19a45f6 100644 --- a/ct/whisparr.sh +++ b/ct/whisparr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/whoogle.sh b/ct/whoogle.sh index 514d655c2..cf0de9473 100644 --- a/ct/whoogle.sh +++ b/ct/whoogle.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/wikijs.sh b/ct/wikijs.sh index 056381f90..e05520c94 100644 --- a/ct/wikijs.sh +++ b/ct/wikijs.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Requarks/wiki/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Requarks/wiki/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Verifying whether ${APP}' new release is v3.x+ and current install uses SQLite." SQLITE_INSTALL=$([ -f /opt/wikijs/db.sqlite ] && echo "true" || echo "false") @@ -50,7 +50,7 @@ function update_script() { msg_info "Updating ${APP}" rm -rf /opt/wikijs/* cd /opt/wikijs - wget -q "https://github.com/requarks/wiki/releases/download/v${RELEASE}/wiki-js.tar.gz" +curl -fsSL "https://github.com/requarks/wiki/releases/download/v${RELEASE}/wiki-js.tar.gz" -O $(basename "https://github.com/requarks/wiki/releases/download/v${RELEASE}/wiki-js.tar.gz") tar -xzf wiki-js.tar.gz msg_ok "Updated ${APP}" diff --git a/ct/wireguard.sh b/ct/wireguard.sh index 66518d009..0d1cc7985 100644 --- a/ct/wireguard.sh +++ b/ct/wireguard.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -43,4 +43,4 @@ description msg_ok "Completed Successfully!\n" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${INFO}${YW} WGDashboard Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:10086${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:10086${CL}" \ No newline at end of file diff --git a/ct/wordpress.sh b/ct/wordpress.sh index e509027ec..8903524ca 100644 --- a/ct/wordpress.sh +++ b/ct/wordpress.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 communtiy-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -14,7 +14,7 @@ var_ram="2048" var_os="debian" var_version="12" -header_info "$APP" +header_info "$APP" variables color catch_errors diff --git a/ct/yt-dlp-webui.sh b/ct/yt-dlp-webui.sh index 30141d49f..e0a1db71f 100644 --- a/ct/yt-dlp-webui.sh +++ b/ct/yt-dlp-webui.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -31,16 +31,16 @@ function update_script() { msg_info "Updating yt-dlp" $STD yt-dlp -U msg_ok "Updated yt-dlp" - RELEASE=$(curl -s https://api.github.com/repos/marcopiovanello/yt-dlp-web-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/marcopiovanello/yt-dlp-web-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ "${RELEASE}" != "$(cat /opt/yt-dlp-webui_version.txt)" ]] || [[ ! -f /opt/yt-dlp-webui_version.txt ]]; then - + msg_info "Stopping $APP" systemctl stop yt-dlp-webui msg_ok "Stopped $APP" msg_info "Updating $APP to v${RELEASE}" rm -rf /usr/local/bin/yt-dlp-webui - wget -q "https://github.com/marcopiovanello/yt-dlp-web-ui/releases/download/v${RELEASE}/yt-dlp-webui_linux-amd64" -O /usr/local/bin/yt-dlp-webui +curl -fsSL "https://github.com/marcopiovanello/yt-dlp-web-ui/releases/download/v${RELEASE}/yt-dlp-webui_linux-amd64" -o "/usr/local/bin/yt-dlp-webui" chmod +x /usr/local/bin/yt-dlp-webui msg_ok "Updated $APP LXC" @@ -60,4 +60,4 @@ 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}:3033${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3033${CL}" \ No newline at end of file diff --git a/ct/yunohost.sh b/ct/yunohost.sh index 3e3d5e5e7..54a620965 100644 --- a/ct/yunohost.sh +++ b/ct/yunohost.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/zabbix.sh b/ct/zabbix.sh index 84229c8c0..958d35800 100644 --- a/ct/zabbix.sh +++ b/ct/zabbix.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -39,7 +39,7 @@ function update_script() { #cp -R /usr/share/zabbix-* /opt/zabbix-backup/ Remove temporary rm -Rf /etc/apt/sources.list.d/zabbix.list cd /tmp - wget -q https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb +curl -fsSL "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb" -O $(basename "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb") $STD dpkg -i zabbix-release_latest+debian12_all.deb $STD apt-get update $STD apt-get install --only-upgrade zabbix-server-pgsql zabbix-frontend-php zabbix-agent2 zabbix-agent2-plugin-* @@ -63,4 +63,4 @@ 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}/zabbix${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/zabbix${CL}" \ No newline at end of file diff --git a/ct/zammad.sh b/ct/zammad.sh index 43f219e5f..a39b63764 100644 --- a/ct/zammad.sh +++ b/ct/zammad.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: Michel Roegl-Brunner (michelroegl-brunner) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE diff --git a/ct/zerotier-one.sh b/ct/zerotier-one.sh index ecbd8ac0e..d9f104ea8 100644 --- a/ct/zerotier-one.sh +++ b/ct/zerotier-one.sh @@ -1,11 +1,10 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: tremor021 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://www.zerotier.com/ - APP="Zerotier-One" var_tags="networking" var_cpu="1" @@ -50,4 +49,4 @@ 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 IP:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:3443${CL}" +echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:3443${CL}" \ No newline at end of file diff --git a/ct/zigbee2mqtt.sh b/ct/zigbee2mqtt.sh index eaa5f8346..75d03acfd 100644 --- a/ct/zigbee2mqtt.sh +++ b/ct/zigbee2mqtt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop zigbee2mqtt @@ -38,32 +38,32 @@ function update_script() { msg_ok "Updated pnpm" msg_info "Creating Backup" - rm -rf /opt/${APP}_backup*.tar.gz - mkdir -p /opt/z2m_backup - $STD tar -czf /opt/z2m_backup/${APP}_backup_$(date +%Y%m%d%H%M%S).tar.gz -C /opt zigbee2mqtt - mv /opt/zigbee2mqtt/data /opt/z2m_backup + rm -rf /opt/${APP}_backup*.tar.gz + mkdir -p /opt/z2m_backup + $STD tar -czf /opt/z2m_backup/${APP}_backup_$(date +%Y%m%d%H%M%S).tar.gz -C /opt zigbee2mqtt + mv /opt/zigbee2mqtt/data /opt/z2m_backup msg_ok "Backup Created" msg_info "Updating ${APP} to v${RELEASE}" - cd /opt - wget -q "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" - unzip -q ${RELEASE}.zip - rm -rf /opt/zigbee2mqtt - mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt - rm -rf /opt/zigbee2mqtt/data - mv /opt/z2m_backup/data /opt/zigbee2mqtt - cd /opt/zigbee2mqtt - $STD pnpm install --frozen-lockfile - $STD pnpm build + cd /opt +curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip") + unzip -q ${RELEASE}.zip + rm -rf /opt/zigbee2mqtt + mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt + rm -rf /opt/zigbee2mqtt/data + mv /opt/z2m_backup/data /opt/zigbee2mqtt + cd /opt/zigbee2mqtt + $STD pnpm install --frozen-lockfile + $STD pnpm build msg_ok "Updated Zigbee2MQTT" msg_info "Starting Service" - systemctl start zigbee2mqtt + systemctl start zigbee2mqtt msg_ok "Started Service" msg_info "Cleaning up" - rm -rf /opt/z2m_backup - rm -rf /opt/${RELEASE}.zip + rm -rf /opt/z2m_backup + rm -rf /opt/${RELEASE}.zip msg_ok "Cleaned up" echo "${RELEASE}" >/opt/${APP}_version.txt else @@ -79,4 +79,4 @@ 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}:9442${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9442${CL}" \ No newline at end of file diff --git a/ct/zipline.sh b/ct/zipline.sh index b02f044be..1e07e2e5a 100644 --- a/ct/zipline.sh +++ b/ct/zipline.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -26,13 +26,13 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - if ! command -v pnpm &>/dev/null; then + if ! command -v pnpm &>/dev/null; then msg_info "Installing pnpm" #export NODE_OPTIONS=--openssl-legacy-provider $STD npm install -g pnpm@latest msg_ok "Installed pnpm" fi - RELEASE=$(curl -s https://api.github.com/repos/diced/zipline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/diced/zipline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping ${APP}" systemctl stop zipline @@ -41,7 +41,7 @@ function update_script() { msg_info "Updating ${APP} to ${RELEASE}" cp /opt/zipline/.env /opt/ rm -R /opt/zipline - wget -q "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv zipline-${RELEASE} /opt/zipline cd /opt/zipline @@ -72,4 +72,4 @@ 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}:3000${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" \ No newline at end of file diff --git a/ct/zitadel.sh b/ct/zitadel.sh index f3f99c361..2d0c9c7bf 100644 --- a/ct/zitadel.sh +++ b/ct/zitadel.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: dave-yap (dave-yap) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,15 +27,15 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -si https://github.com/zitadel/zitadel/releases/latest | grep location: | cut -d '/' -f 8 | tr -d '\r') + RELEASE=$(curl -fsSLi https://github.com/zitadel/zitadel/releases/latest | grep location: | cut -d '/' -f 8 | tr -d '\r') if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt | grep -oP '\d+\.\d+\.\d+')" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then msg_info "Stopping $APP" systemctl stop zitadel msg_ok "Stopped $APP" - + msg_info "Updating $APP to ${RELEASE}" cd /tmp - wget -qc https://github.com/zitadel/zitadel/releases/download/$RELEASE/zitadel-linux-amd64.tar.gz -O - | tar -xz + curl -fsSL https://github.com/zitadel/zitadel/releases/download/$RELEASE/zitadel-linux-amd64.tar.gz | tar -xz mv zitadel-linux-amd64/zitadel /usr/local/bin $STD zitadel setup --masterkeyFile /opt/zitadel/.masterkey --config /opt/zitadel/config.yaml --init-projections=true echo "${RELEASE}" >/opt/${APP}_version.txt @@ -49,7 +49,7 @@ function update_script() { rm -rf /tmp/zitadel-linux-amd64 msg_ok "Cleanup Completed" msg_ok "Update Successful" - else + else msg_ok "No update required. ${APP} is already at ${RELEASE}" fi exit diff --git a/ct/zoraxy.sh b/ct/zoraxy.sh index 2eb43a1c4..e5c959e0c 100644 --- a/ct/zoraxy.sh +++ b/ct/zoraxy.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,11 +27,11 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/tobychui/zoraxy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/tobychui/zoraxy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Updating $APP to ${RELEASE}" systemctl stop zoraxy - wget -q "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" +curl -fsSL "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" -O $(basename "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64") rm -rf /opt/zoraxy/zoraxy mv zoraxy_linux_amd64 /opt/zoraxy/zoraxy chmod +x /opt/zoraxy/zoraxy diff --git a/ct/zwave-js-ui.sh b/ct/zwave-js-ui.sh index 86500e5ba..be2711a01 100644 --- a/ct/zwave-js-ui.sh +++ b/ct/zwave-js-ui.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck (tteckster) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE @@ -27,7 +27,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - RELEASE=$(curl -s https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') + RELEASE=$(curl -fsSL https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then msg_info "Stopping Service" systemctl stop zwave-js-ui @@ -36,7 +36,7 @@ function update_script() { msg_info "Updating Z-Wave JS UI" rm -rf /opt/zwave-js-ui/* cd /opt/zwave-js-ui - wget -q https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip +curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -O $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip") unzip -q zwave-js-ui-${RELEASE}-linux.zip msg_ok "Updated Z-Wave JS UI" diff --git a/frontend/public/json/cron-update-lxcs.json b/frontend/public/json/cron-update-lxcs.json index eeb6311f2..fd7e1dac5 100644 --- a/frontend/public/json/cron-update-lxcs.json +++ b/frontend/public/json/cron-update-lxcs.json @@ -36,7 +36,7 @@ "type": "info" }, { - "text": "To exclude LXCs from updating, edit the crontab using `crontab -e` and add CTID as shown in the example below:\n\n\n\n`0 0 * * 0 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /bin/bash -c '$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/update-lxcs-cron.sh)' -s 103 111 >>/var/log/update-lxcs-cron.log 2>/dev/null`", + "text": "To exclude LXCs from updating, edit the crontab using `crontab -e` and add CTID as shown in the example below:\n\n\n\n`0 0 * * 0 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /bin/bash -c '$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/update-lxcs-cron.sh)' -s 103 111 >>/var/log/update-lxcs-cron.log 2>/dev/null`", "type": "info" } diff --git a/frontend/src/app/scripts/_components/ScriptItems/InstallCommand.tsx b/frontend/src/app/scripts/_components/ScriptItems/InstallCommand.tsx index 26d941cf3..647b1403d 100644 --- a/frontend/src/app/scripts/_components/ScriptItems/InstallCommand.tsx +++ b/frontend/src/app/scripts/_components/ScriptItems/InstallCommand.tsx @@ -4,82 +4,86 @@ import { basePath } from "@/config/siteConfig"; import { Script } from "@/lib/types"; import { getDisplayValueFromType } from "../ScriptInfoBlocks"; -const getInstallCommand = (scriptPath?: string, isAlpine = false) => { - return `bash -c "$(wget -q${isAlpine ? "" : "L"}O - https://github.com/community-scripts/${basePath}/raw/main/${scriptPath})"`; +const getInstallCommand = (scriptPath = "", isAlpine = false) => { + const url = `https://raw.githubusercontent.com/community-scripts/${basePath}/main/${scriptPath}`; + return isAlpine + ? `bash -c "$(curl -fsSL ${url})"` + : `bash -c "$(curl -fsSL ${url})"`; }; + export default function InstallCommand({ item }: { item: Script }) { - const alpineScript = item.install_methods.find( - (method) => method.type === "alpine", - ); + const alpineScript = item.install_methods.find( + (method) => method.type === "alpine", + ); - const defaultScript = item.install_methods.find( - (method) => method.type === "default", - ); + const defaultScript = item.install_methods.find( + (method) => method.type === "default", + ); - const renderInstructions = (isAlpine = false) => ( - <> -

- {isAlpine ? ( - <> - As an alternative option, you can use Alpine Linux and the{" "} - {item.name} package to create a {item.name}{" "} - {getDisplayValueFromType(item.type)} container with faster creation - time and minimal system resource usage. You are also obliged to - adhere to updates provided by the package maintainer. - - ) : item.type == "misc" ? ( - <> - To use the {item.name} script, run the command below in the shell. - - ) : ( - <> - {" "} - To create a new Proxmox VE {item.name}{" "} - {getDisplayValueFromType(item.type)}, run the command below in the - Proxmox VE Shell. - - )} -

- {isAlpine && ( -

- To create a new Proxmox VE Alpine-{item.name}{" "} - {getDisplayValueFromType(item.type)}, run the command below in the - Proxmox VE Shell -

- )} - - ); - - return ( -
- {alpineScript ? ( - - - Default - Alpine Linux - - - {renderInstructions()} - - {getInstallCommand(defaultScript?.script)} - - - - {renderInstructions(true)} - - {getInstallCommand(alpineScript.script, true)} - - - - ) : defaultScript?.script ? ( + const renderInstructions = (isAlpine = false) => ( <> - {renderInstructions()} - - {getInstallCommand(defaultScript.script)} - +

+ {isAlpine ? ( + <> + As an alternative option, you can use Alpine Linux and the{" "} + {item.name} package to create a {item.name}{" "} + {getDisplayValueFromType(item.type)} container with faster creation + time and minimal system resource usage. You are also obliged to + adhere to updates provided by the package maintainer. + + ) : item.type == "misc" ? ( + <> + To use the {item.name} script, run the command below in the shell. + + ) : ( + <> + {" "} + To create a new Proxmox VE {item.name}{" "} + {getDisplayValueFromType(item.type)}, run the command below in the + Proxmox VE Shell. + + )} +

+ {isAlpine && ( +

+ To create a new Proxmox VE Alpine-{item.name}{" "} + {getDisplayValueFromType(item.type)}, run the command below in the + Proxmox VE Shell +

+ )} - ) : null} -
- ); -} + ); + + return ( +
+ {alpineScript ? ( + + + Default + Alpine Linux + + + {renderInstructions()} + + {getInstallCommand(defaultScript?.script)} + + + + {renderInstructions(true)} + + {getInstallCommand(alpineScript.script, true)} + + + + ) : defaultScript?.script ? ( + <> + {renderInstructions()} + + {getInstallCommand(defaultScript.script)} + + + ) : null} +
+ ); +} \ No newline at end of file diff --git a/install/2fauth-install.sh b/install/2fauth-install.sh index 4f843e306..85fef6b67 100644 --- a/install/2fauth-install.sh +++ b/install/2fauth-install.sh @@ -46,8 +46,8 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH msg_ok "Set up Database" msg_info "Setup 2FAuth" -RELEASE=$(curl -s https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip") unzip -q "${RELEASE}.zip" mv "2FAuth-${RELEASE//v/}/" /opt/2fauth diff --git a/install/actualbudget-install.sh b/install/actualbudget-install.sh index 7403c5196..da24b535f 100644 --- a/install/actualbudget-install.sh +++ b/install/actualbudget-install.sh @@ -34,8 +34,8 @@ msg_ok "Installed Node.js" msg_info "Installing Actual Budget" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/actualbudget/actual/archive/refs/tags/v${RELEASE}.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/actualbudget/actual/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/actualbudget/actual/archive/refs/tags/v${RELEASE}.tar.gz") tar -xzf v${RELEASE}.tar.gz mv actual-${RELEASE} /opt/actualbudget diff --git a/install/adventurelog-install.sh b/install/adventurelog-install.sh index dbaaf823e..e813e5268 100644 --- a/install/adventurelog-install.sh +++ b/install/adventurelog-install.sh @@ -67,8 +67,8 @@ DJANGO_ADMIN_USER="djangoadmin" DJANGO_ADMIN_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)" LOCAL_IP="$(hostname -I | awk '{print $1}')" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv AdventureLog-${RELEASE} /opt/adventurelog cat </opt/adventurelog/backend/server/.env diff --git a/install/agentdvr-install.sh b/install/agentdvr-install.sh index 58272816f..e7d7f085d 100644 --- a/install/agentdvr-install.sh +++ b/install/agentdvr-install.sh @@ -24,9 +24,9 @@ msg_ok "Installed Dependencies" msg_info "Installing AgentDVR" mkdir -p /opt/agentdvr/agent -RELEASE=$(curl -s "https://www.ispyconnect.com/api/Agent/DownloadLocation4?platform=Linux64&fromVersion=0" | grep -o 'https://.*\.zip') +RELEASE=$(curl -fsSL "https://www.ispyconnect.com/api/Agent/DownloadLocation4?platform=Linux64&fromVersion=0" | grep -o 'https://.*\.zip') cd /opt/agentdvr/agent -wget -q $RELEASE +curl -fsSL "$RELEASE" -O $(basename "$RELEASE") $STD unzip Agent_Linux64*.zip rm -rf Agent_Linux64*.zip chmod +x ./Agent diff --git a/install/alpine-docker-install.sh b/install/alpine-docker-install.sh index 3330d7dde..559970a3c 100644 --- a/install/alpine-docker-install.sh +++ b/install/alpine-docker-install.sh @@ -29,7 +29,7 @@ $STD rc-update add docker default msg_ok "Installed Docker" get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } PORTAINER_LATEST_VERSION=$(get_latest_release "portainer/portainer") DOCKER_COMPOSE_LATEST_VERSION=$(get_latest_release "docker/compose") @@ -67,7 +67,7 @@ if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Installing Docker Compose $DOCKER_COMPOSE_LATEST_VERSION" DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker} mkdir -p $DOCKER_CONFIG/cli-plugins - curl -sSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose + curl -fsSLSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose msg_ok "Installed Docker Compose $DOCKER_COMPOSE_LATEST_VERSION" fi diff --git a/install/alpine-it-tools-install.sh b/install/alpine-it-tools-install.sh index d8bb390c8..1a444a33b 100644 --- a/install/alpine-it-tools-install.sh +++ b/install/alpine-it-tools-install.sh @@ -23,7 +23,7 @@ $STD apk add \ msg_ok "Installed Dependencies" msg_info "Installing IT-Tools" -RELEASE=$(curl -s https://api.github.com/repos/CorentinTh/it-tools/releases/latest | grep '"tag_name":' | cut -d '"' -f4) +RELEASE=$(curl -fsSL https://api.github.com/repos/CorentinTh/it-tools/releases/latest | grep '"tag_name":' | cut -d '"' -f4) DOWNLOAD_URL="https://github.com/CorentinTh/it-tools/releases/download/${RELEASE}/it-tools-${RELEASE#v}.zip" curl -fsSL -o it-tools.zip "$DOWNLOAD_URL" diff --git a/install/apache-cassandra-install.sh b/install/apache-cassandra-install.sh index 0c784345b..91f7af54d 100644 --- a/install/apache-cassandra-install.sh +++ b/install/apache-cassandra-install.sh @@ -19,14 +19,14 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing Eclipse Temurin (Patience)" -wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo 'deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/adoptium.gpg] https://packages.adoptium.net/artifactory/deb bookworm main' >/etc/apt/sources.list.d/adoptium.list $STD apt-get update $STD apt-get install -y temurin-11-jdk msg_ok "Installed Eclipse Temurin" msg_info "Installing Apache Cassandra" -wget -qO- https://downloads.apache.org/cassandra/KEYS | gpg --dearmor >/etc/apt/trusted.gpg.d/cassandra.gpg +curl -fsSL "https://downloads.apache.org/cassandra/KEYS" | gpg --dearmor >/etc/apt/trusted.gpg.d/cassandra.gpg echo "deb https://debian.cassandra.apache.org 41x main" >/etc/apt/sources.list.d/cassandra.sources.list $STD apt-get update $STD apt-get install -y cassandra cassandra-tools diff --git a/install/apache-guacamole-install.sh b/install/apache-guacamole-install.sh index fca785d45..b9fc2fe7a 100644 --- a/install/apache-guacamole-install.sh +++ b/install/apache-guacamole-install.sh @@ -40,10 +40,10 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Setup Apache Tomcat" -RELEASE=$(wget -qO- https://dlcdn.apache.org/tomcat/tomcat-9/ | grep -oP '(?<=href=")v[^"/]+(?=/")' | sed 's/^v//' | sort -V | tail -n1) +RELEASE=$(curl -fsSL https://dlcdn.apache.org/tomcat/tomcat-9/ | grep -oP '(?<=href=")v[^"/]+(?=/")' | sed 's/^v//' | sort -V | tail -n1) mkdir -p /opt/apache-guacamole/tomcat9 mkdir -p /opt/apache-guacamole/server -wget -qO- "https://dlcdn.apache.org/tomcat/tomcat-9/v${RELEASE}/bin/apache-tomcat-${RELEASE}.tar.gz" | tar -xz -C /opt/apache-guacamole/tomcat9 --strip-components=1 +curl -fsSL "https://dlcdn.apache.org/tomcat/tomcat-9/v${RELEASE}/bin/apache-tomcat-${RELEASE}.tar.gz" | tar -xz -C /opt/apache-guacamole/tomcat9 --strip-components=1 useradd -r -d /opt/apache-guacamole/tomcat9 -s /bin/false tomcat chown -R tomcat: /opt/apache-guacamole/tomcat9 chmod -R g+r /opt/apache-guacamole/tomcat9/conf @@ -52,21 +52,21 @@ msg_ok "Setup Apache Tomcat" msg_info "Setup Apache Guacamole" mkdir -p /etc/guacamole/{extensions,lib} -RELEASE_SERVER=$(curl -sL https://api.github.com/repos/apache/guacamole-server/tags | jq -r '.[0].name') -wget -qO- https://api.github.com/repos/apache/guacamole-server/tarball/refs/tags/${RELEASE_SERVER} | tar -xz --strip-components=1 -C /opt/apache-guacamole/server +RELEASE_SERVER=$(curl -fsSLL https://api.github.com/repos/apache/guacamole-server/tags | jq -r '.[0].name') +curl -fsSL "https://api.github.com/repos/apache/guacamole-server/tarball/refs/tags/${RELEASE_SERVER}" | tar -xz --strip-components=1 -C /opt/apache-guacamole/server cd /opt/apache-guacamole/server $STD autoreconf -fi $STD ./configure --with-init-dir=/etc/init.d --enable-allow-freerdp-snapshots $STD make $STD make install $STD ldconfig -RELEASE_CLIENT=$(curl -sL https://api.github.com/repos/apache/guacamole-client/tags | jq -r '.[0].name') -wget -q -O /opt/apache-guacamole/tomcat9/webapps/guacamole.war https://downloads.apache.org/guacamole/${RELEASE_CLIENT}/binary/guacamole-${RELEASE_CLIENT}.war +RELEASE_CLIENT=$(curl -fsSLL https://api.github.com/repos/apache/guacamole-client/tags | jq -r '.[0].name') +curl -fsSL "https://downloads.apache.org/guacamole/${RELEASE_CLIENT}/binary/guacamole-${RELEASE_CLIENT}.war" -o "/opt/apache-guacamole/tomcat9/webapps/guacamole.war" cd /root -wget -q --directory-prefix=/root/ https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.26.tar.gz +curl -fsSL "--directory-prefix=/root/ https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.26.tar.gz" -O $(basename "--directory-prefix=/root/ https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.26.tar.gz") $STD tar -xf ~/mysql-connector-java-8.0.26.tar.gz mv ~/mysql-connector-java-8.0.26/mysql-connector-java-8.0.26.jar /etc/guacamole/lib/ -wget -q --directory-prefix=/root/ https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-auth-jdbc-1.5.5.tar.gz +curl -fsSL "--directory-prefix=/root/ https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-auth-jdbc-1.5.5.tar.gz" -O $(basename "--directory-prefix=/root/ https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-auth-jdbc-1.5.5.tar.gz") $STD tar -xf ~/guacamole-auth-jdbc-1.5.5.tar.gz mv ~/guacamole-auth-jdbc-1.5.5/mysql/guacamole-auth-jdbc-mysql-1.5.5.jar /etc/guacamole/extensions/ msg_ok "Setup Apache Guacamole" diff --git a/install/apache-tika-install.sh b/install/apache-tika-install.sh index ab6955aa9..0d8a6593c 100644 --- a/install/apache-tika-install.sh +++ b/install/apache-tika-install.sh @@ -41,8 +41,8 @@ msg_ok "Setup OpenJDK" msg_info "Installing Apache Tika" mkdir -p /opt/apache-tika cd /opt/apache-tika -RELEASE="$(wget -qO- https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)" -wget -q "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" +RELEASE="$(curl -fsSL https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)" +curl -fsSL "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" -O $(basename "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar") mv tika-server-standard-${RELEASE}.jar tika-server-standard.jar echo "${RELEASE}" >/opt/${APPLICATION}_version.txt msg_ok "Installed Apache Tika" diff --git a/install/apache-tomcat-install.sh b/install/apache-tomcat-install.sh index 4a915be22..579531878 100644 --- a/install/apache-tomcat-install.sh +++ b/install/apache-tomcat-install.sh @@ -23,7 +23,7 @@ msg_ok "Installed Dependencies" msg_info "Setting up Adoptium Repository" mkdir -p /etc/apt/keyrings -wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" >/etc/apt/sources.list.d/adoptium.list $STD apt-get update msg_ok "Set up Adoptium Repository" @@ -115,9 +115,9 @@ case $version in esac msg_info "Installing Tomcat $TOMCAT_VERSION" -LATEST_VERSION=$(curl -s "https://dlcdn.apache.org/tomcat/tomcat-$TOMCAT_VERSION/" | grep -oP 'v[0-9]+\.[0-9]+\.[0-9]+(-M[0-9]+)?/' | sort -V | tail -n 1 | sed 's/\/$//; s/v//') +LATEST_VERSION=$(curl -fsSL "https://dlcdn.apache.org/tomcat/tomcat-$TOMCAT_VERSION/" | grep -oP 'v[0-9]+\.[0-9]+\.[0-9]+(-M[0-9]+)?/' | sort -V | tail -n 1 | sed 's/\/$//; s/v//') TOMCAT_URL="https://dlcdn.apache.org/tomcat/tomcat-$TOMCAT_VERSION/v$LATEST_VERSION/bin/apache-tomcat-$LATEST_VERSION.tar.gz" -wget -qO /tmp/tomcat.tar.gz "$TOMCAT_URL" +curl -fsSL "$TOMCAT_URL" -o "/tmp/tomcat.tar.gz" mkdir -p /opt/tomcat-$TOMCAT_VERSION tar --strip-components=1 -xzf /tmp/tomcat.tar.gz -C /opt/tomcat-$TOMCAT_VERSION chown -R root:root /opt/tomcat-$TOMCAT_VERSION diff --git a/install/aria2-install.sh b/install/aria2-install.sh index 571dc2684..13bcbd3ba 100644 --- a/install/aria2-install.sh +++ b/install/aria2-install.sh @@ -22,7 +22,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then msg_info "Installing AriaNG" $STD apt-get install -y nginx systemctl disable -q --now nginx - wget -q "$(curl -s https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)" + curl -fsSL "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)") $STD unzip AriaNg-*-AllInOne.zip -d /var/www rm /etc/nginx/sites-enabled/* cat </etc/nginx/conf.d/ariang.conf diff --git a/install/authelia-install.sh b/install/authelia-install.sh index cc97e8219..f35d7eed4 100644 --- a/install/authelia-install.sh +++ b/install/authelia-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Authelia" -RELEASE=$(curl -s https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" +RELEASE=$(curl -fsSL https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" -O $(basename "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb") $STD dpkg -i "authelia_${RELEASE}_amd64.deb" msg_ok "Install Authelia completed" diff --git a/install/authentik-install.sh b/install/authentik-install.sh index 1f9d79f54..ef58a677e 100644 --- a/install/authentik-install.sh +++ b/install/authentik-install.sh @@ -38,15 +38,15 @@ msg_ok "Installed Dependencies" msg_info "Installing yq" cd /tmp -YQ_LATEST="$(wget -qO- "https://api.github.com/repos/mikefarah/yq/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")')" -wget -q "https://github.com/mikefarah/yq/releases/download/${YQ_LATEST}/yq_linux_amd64" -qO /usr/bin/yq +YQ_LATEST="$(curl -fsSL "https://api.github.com/repos/mikefarah/yq/releases/latest" | grep -Po '"tag_name": \K.*?(?=")')" +curl -fsSL "https://github.com/mikefarah/yq/releases/download/${YQ_LATEST}/yq_linux_amd64" -qO /usr/bin/yq" -O $(basename "https://github.com/mikefarah/yq/releases/download/${YQ_LATEST}/yq_linux_amd64" -qO /usr/bin/yq") chmod +x /usr/bin/yq msg_ok "Installed yq" msg_info "Installing GeoIP" cd /tmp -GEOIP_RELEASE=$(curl -s https://api.github.com/repos/maxmind/geoipupdate/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -qO geoipupdate.deb https://github.com/maxmind/geoipupdate/releases/download/v${GEOIP_RELEASE}/geoipupdate_${GEOIP_RELEASE}_linux_amd64.deb +GEOIP_RELEASE=$(curl -fsSL https://api.github.com/repos/maxmind/geoipupdate/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/maxmind/geoipupdate/releases/download/v${GEOIP_RELEASE}/geoipupdate_${GEOIP_RELEASE}_linux_amd64.deb" -o "geoipupdate.deb" $STD dpkg -i geoipupdate.deb cat </etc/GeoIP.conf #GEOIPUPDATE_EDITION_IDS="GeoLite2-City GeoLite2-ASN" @@ -58,7 +58,7 @@ msg_ok "Installed GeoIP" msg_info "Setting up Python 3" cd /tmp -wget -q https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz -O Python.tgz +curl -fsSL "https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz" -o "Python.tgz" tar -zxf Python.tgz cd Python-3.12.1 $STD ./configure --enable-optimizations @@ -81,8 +81,8 @@ msg_ok "Installed Node.js" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -107,9 +107,9 @@ $STD sudo -u postgres psql -c "ALTER USER $DB_USER WITH SUPERUSER;" msg_ok "Installed PostgreSQL" msg_info "Installing authentik" -RELEASE=$(curl -s https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}') +RELEASE=$(curl -fsSL https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}') mkdir -p /opt/authentik -wget -qO authentik.tar.gz "${RELEASE}" +curl -fsSL "${RELEASE}" -o "authentik.tar.gz" tar -xzf authentik.tar.gz -C /opt/authentik --strip-components 1 --overwrite cd /opt/authentik/website $STD npm install @@ -190,4 +190,4 @@ rm -rf authentik.tar.gz $STD apt-get -y remove yq $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/autobrr-install.sh b/install/autobrr-install.sh index 4fc19d1df..ccf356592 100644 --- a/install/autobrr-install.sh +++ b/install/autobrr-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing Autobrr" -wget -q $(curl -s https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)") tar -C /usr/local/bin -xzf autobrr*.tar.gz rm -rf autobrr*.tar.gz mkdir -p /root/.config/autobrr diff --git a/install/baikal-install.sh b/install/baikal-install.sh index 0a13a9b12..2f1122386 100644 --- a/install/baikal-install.sh +++ b/install/baikal-install.sh @@ -36,9 +36,9 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMP msg_ok "Set up PostgreSQL" msg_info "Installing Baikal" -RELEASE=$(curl -s https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') cd /opt -wget -q "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" +curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -O $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip") unzip -q "baikal-${RELEASE}.zip" cat </opt/baikal/config/baikal.yaml database: diff --git a/install/barcode-buddy-install.sh b/install/barcode-buddy-install.sh index 0c5763f83..5709462f6 100644 --- a/install/barcode-buddy-install.sh +++ b/install/barcode-buddy-install.sh @@ -22,9 +22,9 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Installing barcodebuddy" -RELEASE=$(curl -s https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy chown -R www-data:www-data /opt/barcodebuddy/data diff --git a/install/bazarr-install.sh b/install/bazarr-install.sh index 2802de084..b2b71f592 100755 --- a/install/bazarr-install.sh +++ b/install/bazarr-install.sh @@ -23,7 +23,7 @@ msg_ok "Setup Python3" msg_info "Installing Bazarr" mkdir -p /var/lib/bazarr/ -wget -q https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip +curl -fsSL "https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip" -O $(basename "https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip") unzip -qq bazarr -d /opt/bazarr chmod 775 /opt/bazarr /var/lib/bazarr/ python3 -m pip install -q -r /opt/bazarr/requirements.txt diff --git a/install/beszel-install.sh b/install/beszel-install.sh index 0c508a289..e7eaecd2a 100644 --- a/install/beszel-install.sh +++ b/install/beszel-install.sh @@ -15,7 +15,7 @@ update_os msg_info "Installing Beszel" mkdir -p /opt/beszel -curl -sL "https://github.com/henrygd/beszel/releases/latest/download/beszel_$(uname -s)_$(uname -m | sed -e 's/x86_64/amd64/' -e 's/armv6l/arm/' -e 's/armv7l/arm/' -e 's/aarch64/arm64/').tar.gz" | tar -xz -O beszel | tee /opt/beszel/beszel >/dev/null +curl -fsSLL "https://github.com/henrygd/beszel/releases/latest/download/beszel_$(uname -s)_$(uname -m | sed -e 's/x86_64/amd64/' -e 's/armv6l/arm/' -e 's/armv7l/arm/' -e 's/aarch64/arm64/').tar.gz" | tar -xz -O beszel | tee /opt/beszel/beszel >/dev/null chmod +x /opt/beszel/beszel msg_ok "Installed Beszel" diff --git a/install/blocky-install.sh b/install/blocky-install.sh index b03174407..a6b464793 100644 --- a/install/blocky-install.sh +++ b/install/blocky-install.sh @@ -18,8 +18,8 @@ if systemctl is-active systemd-resolved >/dev/null 2>&1; then systemctl disable -q --now systemd-resolved fi mkdir /opt/blocky -RELEASE=$(curl -s https://api.github.com/repos/0xERR0R/blocky/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -qO- https://github.com/0xERR0R/blocky/releases/download/v${RELEASE}/blocky_v${RELEASE}_Linux_x86_64.tar.gz | tar -xzf - -C /opt/blocky/ +RELEASE=$(curl -fsSL https://api.github.com/repos/0xERR0R/blocky/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/0xERR0R/blocky/releases/download/v${RELEASE}/blocky_v${RELEASE}_Linux_x86_64.tar.gz" | tar -xzf - -C /opt/blocky/ cat </opt/blocky/config.yml # configuration documentation: https://0xerr0r.github.io/blocky/latest/configuration/ diff --git a/install/boltdiy-install.sh b/install/boltdiy-install.sh index 809191336..b007320cc 100644 --- a/install/boltdiy-install.sh +++ b/install/boltdiy-install.sh @@ -33,8 +33,8 @@ msg_ok "Setup Node.js" msg_info "Setup bolt.diy" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/stackblitz-labs/bolt.diy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/stackblitz-labs/bolt.diy/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/stackblitz-labs/bolt.diy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/stackblitz-labs/bolt.diy/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar xzf $temp_file mv bolt.diy-${RELEASE} /opt/bolt.diy cd /opt/bolt.diy diff --git a/install/bookstack-install.sh b/install/bookstack-install.sh index 4d5340e7b..b98a9adf9 100644 --- a/install/bookstack-install.sh +++ b/install/bookstack-install.sh @@ -42,8 +42,8 @@ msg_ok "Set up database" msg_info "Setup Bookstack (Patience)" LOCAL_IP="$(hostname -I | awk '{print $1}')" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv BookStack-${RELEASE} /opt/bookstack cd /opt/bookstack diff --git a/install/bunkerweb-install.sh b/install/bunkerweb-install.sh index c9bb6cb1a..2fa72ca15 100644 --- a/install/bunkerweb-install.sh +++ b/install/bunkerweb-install.sh @@ -20,13 +20,13 @@ $STD apt-get install -y lsb-release msg_ok "Installed Dependencies" msg_info "Installing Nginx" -wget -qO- https://nginx.org/keys/nginx_signing.key | gpg --dearmor >/usr/share/keyrings/nginx-archive-keyring.gpg +curl -fsSL "https://nginx.org/keys/nginx_signing.key" | gpg --dearmor >/usr/share/keyrings/nginx-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian $(lsb_release -cs) nginx" >/etc/apt/sources.list.d/nginx.list $STD apt-get update $STD apt-get install -y nginx=1.26.3* msg_ok "Installed Nginx" -RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing BunkerWeb v${RELEASE} (Patience)" curl -fsSL "https://repo.bunkerweb.io/bunkerity/bunkerweb/gpgkey" | gpg --dearmor >/etc/apt/keyrings/bunkerity_bunkerweb-archive-keyring.gpg echo "deb [signed-by=/etc/apt/keyrings/bunkerity_bunkerweb-archive-keyring.gpg] https://repo.bunkerweb.io/bunkerity/bunkerweb/debian/ bookworm main" >/etc/apt/sources.list.d/bunkerity_bunkerweb.list diff --git a/install/bytestash-install.sh b/install/bytestash-install.sh index 9f2b65988..6338d6fd4 100644 --- a/install/bytestash-install.sh +++ b/install/bytestash-install.sh @@ -32,8 +32,8 @@ msg_ok "Installed Node.js" msg_info "Installing ByteStash" JWT_SECRET=$(openssl rand -base64 32 | tr -d '/+=') temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/jordan-dalby/ByteStash/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/jordan-dalby/ByteStash/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/jordan-dalby/ByteStash/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/jordan-dalby/ByteStash/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv ByteStash-${RELEASE} /opt/bytestash cd /opt/bytestash/server diff --git a/install/caddy-install.sh b/install/caddy-install.sh index 9542a71e7..fd0fe35b7 100644 --- a/install/caddy-install.sh +++ b/install/caddy-install.sh @@ -33,8 +33,8 @@ if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) - golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) - wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" + golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -43,8 +43,8 @@ if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Setup xCaddy" cd /opt - RELEASE=$(curl -s https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - wget -q https://github.com/caddyserver/xcaddy/releases/download/${RELEASE}/xcaddy_${RELEASE:1}_linux_amd64.deb + RELEASE=$(curl -fsSL https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/caddyserver/xcaddy/releases/download/${RELEASE}/xcaddy_${RELEASE:1}_linux_amd64.deb" -O $(basename "https://github.com/caddyserver/xcaddy/releases/download/${RELEASE}/xcaddy_${RELEASE:1}_linux_amd64.deb") $STD dpkg -i xcaddy_${RELEASE:1}_linux_amd64.deb rm -rf /opt/xcaddy* $STD xcaddy build @@ -57,4 +57,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/calibre-web-install.sh b/install/calibre-web-install.sh index 0643cf9b7..91c5bd3d8 100644 --- a/install/calibre-web-install.sh +++ b/install/calibre-web-install.sh @@ -33,7 +33,7 @@ msg_ok "Installed Kepubify" msg_info "Installing Calibre-Web" mkdir -p /opt/calibre-web $STD apt-get install -y calibre -$STD wget https://github.com/janeczku/calibre-web/raw/master/library/metadata.db -P /opt/calibre-web +$STD curl -fsSL https://github.com/janeczku/calibre-web/raw/master/library/metadata.db -o /opt/calibre-web/metadata.db $STD pip install calibreweb $STD pip install jsonschema msg_ok "Installed Calibre-Web" diff --git a/install/checkmk-install.sh b/install/checkmk-install.sh index fabcc0ba8..56af8c8da 100644 --- a/install/checkmk-install.sh +++ b/install/checkmk-install.sh @@ -15,7 +15,7 @@ update_os msg_info "Install Checkmk" RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -v '\-rc' | sort -V | tail -n 1) -wget -q https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb -O /opt/checkmk.deb +curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb" $STD apt-get install -y /opt/checkmk.deb echo "${RELEASE}" >"/opt/checkmk_version.txt" msg_ok "Installed Checkmk" diff --git a/install/commafeed-install.sh b/install/commafeed-install.sh index b4ec7f162..ef5372bc3 100644 --- a/install/commafeed-install.sh +++ b/install/commafeed-install.sh @@ -18,17 +18,17 @@ $STD apt-get install -y rsync msg_ok "Installed Dependencies" msg_info "Installing Azul Zulu" -wget -qO /etc/apt/trusted.gpg.d/zulu-repo.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -wget -q https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb +curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -o "/etc/apt/trusted.gpg.d/zulu-repo.asc" +curl -fsSL "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb" -O $(basename "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb") $STD dpkg -i zulu-repo_1.0.0-3_all.deb $STD apt-get update $STD apt-get -y install zulu17-jdk msg_ok "Installed Azul Zulu" -RELEASE=$(curl -sL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +RELEASE=$(curl -fsSLL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4) msg_info "Installing CommaFeed ${RELEASE}" mkdir /opt/commafeed -wget -q https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip +curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -O $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip") unzip -q commafeed-${RELEASE}-h2-jvm.zip mv commafeed-${RELEASE}-h2/* /opt/commafeed/ echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/cosmos-install.sh b/install/cosmos-install.sh index f266a926c..40e5dc541 100644 --- a/install/cosmos-install.sh +++ b/install/cosmos-install.sh @@ -22,7 +22,7 @@ msg_ok "Installed Dependencies" msg_info "Install mergerfs" MERGERFS_VERSION="2.40.2" -wget -q "https://github.com/trapexit/mergerfs/releases/download/${MERGERFS_VERSION}/mergerfs_${MERGERFS_VERSION}.debian-bullseye_amd64.deb" +curl -fsSL "https://github.com/trapexit/mergerfs/releases/download/${MERGERFS_VERSION}/mergerfs_${MERGERFS_VERSION}.debian-bullseye_amd64.deb" -O $(basename "https://github.com/trapexit/mergerfs/releases/download/${MERGERFS_VERSION}/mergerfs_${MERGERFS_VERSION}.debian-bullseye_amd64.deb") $STD dpkg -i "mergerfs_${MERGERFS_VERSION}.debian-bullseye_amd64.deb" || $STD apt-get install -f -y rm "mergerfs_${MERGERFS_VERSION}.debian-bullseye_amd64.deb" msg_ok "Installed mergerfs" @@ -35,9 +35,9 @@ msg_ok "Installed Docker" msg_info "Install Cosmos" mkdir -p /opt/cosmos -LATEST_RELEASE=$(curl -s https://api.github.com/repos/azukaar/Cosmos-Server/releases/latest | grep "tag_name" | cut -d '"' -f 4) +LATEST_RELEASE=$(curl -fsSL https://api.github.com/repos/azukaar/Cosmos-Server/releases/latest | grep "tag_name" | cut -d '"' -f 4) ZIP_FILE="cosmos-cloud-${LATEST_RELEASE#v}-amd64.zip" -curl -sL "https://github.com/azukaar/Cosmos-Server/releases/download/${LATEST_RELEASE}/${ZIP_FILE}" -o "/opt/cosmos/${ZIP_FILE}" +curl -fsSLL "https://github.com/azukaar/Cosmos-Server/releases/download/${LATEST_RELEASE}/${ZIP_FILE}" -o "/opt/cosmos/${ZIP_FILE}" cd /opt/cosmos unzip -o -q "${ZIP_FILE}" LATEST_RELEASE_NO_V=${LATEST_RELEASE#v} diff --git a/install/crafty-controller-install.sh b/install/crafty-controller-install.sh index 969b22354..faf628e70 100644 --- a/install/crafty-controller-install.sh +++ b/install/crafty-controller-install.sh @@ -25,7 +25,7 @@ msg_ok "Installed Dependencies" msg_info "Setting up TemurinJDK" mkdir -p /etc/apt/keyrings -wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | tee /etc/apt/keyrings/adoptium.asc +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | tee /etc/apt/keyrings/adoptium.asc echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | tee /etc/apt/sources.list.d/adoptium.list $STD apt-get update $STD apt-get install -y temurin-{8,11,17,21}-jre @@ -45,9 +45,9 @@ msg_info "Installing Craty-Controller (Patience)" useradd crafty -m -s /bin/bash cd /opt mkdir -p /opt/crafty-controller/crafty /opt/crafty-controller/server -RELEASE=$(curl -s "https://gitlab.com/api/v4/projects/20430749/releases" | grep -o '"tag_name":"v[^"]*"' | head -n 1 | sed 's/"tag_name":"v//;s/"//') +RELEASE=$(curl -fsSL "https://gitlab.com/api/v4/projects/20430749/releases" | grep -o '"tag_name":"v[^"]*"' | head -n 1 | sed 's/"tag_name":"v//;s/"//') echo "${RELEASE}" >"/opt/crafty-controller_version.txt" -wget -q "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" +curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -O $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip") unzip -q crafty-4-v${RELEASE}.zip cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/ rm -rf crafty-4-v${RELEASE} diff --git a/install/cronicle-install.sh b/install/cronicle-install.sh index f46604520..958b3b27e 100644 --- a/install/cronicle-install.sh +++ b/install/cronicle-install.sh @@ -29,7 +29,7 @@ $STD apt-get install -y nodejs msg_ok "Installed Node.js" msg_info "Installing Cronicle Primary Server" -LATEST=$(curl -sL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +LATEST=$(curl -fsSLL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4) IP=$(hostname -I | awk '{print $1}') mkdir -p /opt/cronicle cd /opt/cronicle diff --git a/install/cryptpad-install.sh b/install/cryptpad-install.sh index 9bf77192a..e19dee82d 100644 --- a/install/cryptpad-install.sh +++ b/install/cryptpad-install.sh @@ -34,8 +34,8 @@ read -p "Install OnlyOffice components instead of CKEditor? (Y/N): " onlyoffice msg_info "Setup ${APPLICATION}" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/cryptpad/cryptpad/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/cryptpad/cryptpad/archive/refs/tags/${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/cryptpad/cryptpad/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/cryptpad/cryptpad/archive/refs/tags/${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv cryptpad-$RELEASE /opt/cryptpad cd /opt/cryptpad diff --git a/install/daemonsync-install.sh b/install/daemonsync-install.sh index 9aa62e9f0..fcba3b959 100644 --- a/install/daemonsync-install.sh +++ b/install/daemonsync-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y g++-multilib msg_ok "Installed Dependencies" msg_info "Installing Daemon Sync Server" -wget -qL https://github.com/community-scripts/ProxmoxVE/raw/main/misc/daemonsync_2.2.0.0059_amd64.deb +curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/daemonsync_2.2.0.0059_amd64.deb -O $STD dpkg -i daemonsync_2.2.0.0059_amd64.deb msg_ok "Installed Daemon Sync Server" diff --git a/install/dashy-install.sh b/install/dashy-install.sh index 2611b179d..2796d1abd 100644 --- a/install/dashy-install.sh +++ b/install/dashy-install.sh @@ -28,10 +28,10 @@ $STD apt-get update $STD apt-get install -y nodejs msg_ok "Installed Node.js" -RELEASE=$(curl -s https://api.github.com/repos/Lissy93/dashy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') msg_info "Installing Dashy ${RELEASE} (Patience)" mkdir -p /opt/dashy -wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1 +curl -fsSL "https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz" | tar -xz -C /opt/dashy --strip-components=1 cd /opt/dashy $STD npm install $STD npm run build diff --git a/install/deconz-install.sh b/install/deconz-install.sh index e9d74c0d8..db317d5f5 100644 --- a/install/deconz-install.sh +++ b/install/deconz-install.sh @@ -21,7 +21,7 @@ msg_ok "Setup Phoscon Repository" msg_info "Installing deConz" libssl=$(curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/" | grep -o 'libssl1\.1_1\.1\.1f-1ubuntu2\.2[^"]*amd64\.deb' | head -n1) -wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl +curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl" -O $STD dpkg -i $libssl $STD apt-get update $STD apt-get install -y deconz diff --git a/install/docker-install.sh b/install/docker-install.sh index 7a3615cae..f78a01676 100644 --- a/install/docker-install.sh +++ b/install/docker-install.sh @@ -14,7 +14,7 @@ network_check update_os get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } DOCKER_LATEST_VERSION=$(get_latest_release "moby/moby") @@ -26,7 +26,7 @@ msg_info "Installing Docker $DOCKER_LATEST_VERSION" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json -$STD sh <(curl -sSL https://get.docker.com) +$STD sh <(curl -fsSLSL https://get.docker.com) msg_ok "Installed Docker $DOCKER_LATEST_VERSION" read -r -p "Would you like to add Portainer? " prompt diff --git a/install/dockge-install.sh b/install/dockge-install.sh index 4f6c5288d..c170ab1a4 100644 --- a/install/dockge-install.sh +++ b/install/dockge-install.sh @@ -14,7 +14,7 @@ network_check update_os get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } DOCKER_LATEST_VERSION=$(get_latest_release "moby/moby") @@ -24,19 +24,19 @@ msg_info "Installing Docker $DOCKER_LATEST_VERSION" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json -$STD sh <(curl -sSL https://get.docker.com) +$STD sh <(curl -fsSLSL https://get.docker.com) msg_ok "Installed Docker $DOCKER_LATEST_VERSION" msg_info "Installing Docker Compose $DOCKER_COMPOSE_LATEST_VERSION" DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker} mkdir -p $DOCKER_CONFIG/cli-plugins -curl -sSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose +curl -fsSLSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose msg_ok "Installed Docker Compose $DOCKER_COMPOSE_LATEST_VERSION" msg_info "Installing Dockge" mkdir -p /opt/{dockge,stacks} -wget -q -O /opt/dockge/compose.yaml https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml +curl -fsSL "https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml" -o "/opt/dockge/compose.yaml" cd /opt/dockge $STD docker compose up -d msg_ok "Installed Dockge" @@ -45,9 +45,8 @@ read -r -p "Would you like to add Immich? " prompt if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then msg_info "Adding Immich compose.yaml" mkdir -p /opt/stacks/immich - wget -q -O /opt/stacks/immich/compose.yaml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml - wget -q -O /opt/stacks/immich/.env https://github.com/immich-app/immich/releases/latest/download/example.env - #wget -q -O /opt/stacks/immich/hwaccel.ml.yml https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml + curl -fsSL "https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml" -o "/opt/stacks/immich/compose.yaml" + curl -fsSL "https://github.com/immich-app/immich/releases/latest/download/example.env" -o "/opt/stacks/immich/.env" msg_ok "Added Immich compose.yaml" fi diff --git a/install/docmost-install.sh b/install/docmost-install.sh index 12f59842e..3c6cee72d 100644 --- a/install/docmost-install.sh +++ b/install/docmost-install.sh @@ -52,8 +52,8 @@ msg_ok "Set up PostgreSQL" msg_info "Installing Docmost (Patience)" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" mv docmost-${RELEASE} /opt/docmost cd /opt/docmost diff --git a/install/dolibarr-install.sh b/install/dolibarr-install.sh index 323eada89..d629ce284 100644 --- a/install/dolibarr-install.sh +++ b/install/dolibarr-install.sh @@ -31,9 +31,9 @@ msg_ok "Set up database" msg_info "Setup Dolibarr" BASE="https://sourceforge.net/projects/dolibarr/files/Dolibarr%20installer%20for%20Debian-Ubuntu%20(DoliDeb)/" -RELEASE=$(curl -s "$BASE" | grep -oP '(?<=/Dolibarr%20installer%20for%20Debian-Ubuntu%20%28DoliDeb%29/)[^/"]+' | head -n1) -FILE=$(curl -s "${BASE}${RELEASE}/" | grep -oP 'dolibarr_[^"]+_all.deb' | head -n1) -wget -q "https://netcologne.dl.sourceforge.net/project/dolibarr/Dolibarr%20installer%20for%20Debian-Ubuntu%20(DoliDeb)/${RELEASE}/${FILE}?viasf=1" -O "$FILE" +RELEASE=$(curl -fsSL "$BASE" | grep -oP '(?<=/Dolibarr%20installer%20for%20Debian-Ubuntu%20%28DoliDeb%29/)[^/"]+' | head -n1) +FILE=$(curl -fsSL "${BASE}${RELEASE}/" | grep -oP 'dolibarr_[^"]+_all.deb' | head -n1) +curl -fsSL "https://netcologne.dl.sourceforge.net/project/dolibarr/Dolibarr%20installer%20for%20Debian-Ubuntu%20(DoliDeb)/${RELEASE}/${FILE}?viasf=1" -o ""$FILE"" echo "dolibarr dolibarr/reconfigure-webserver multiselect apache2" | debconf-set-selections $STD apt-get install ./$FILE -y $STD apt install -f diff --git a/install/duplicati-install.sh b/install/duplicati-install.sh index b51ea566c..bdcfe9ec0 100644 --- a/install/duplicati-install.sh +++ b/install/duplicati-install.sh @@ -21,8 +21,8 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Setting up Duplicati" -RELEASE=$(curl -s https://api.github.com/repos/duplicati/duplicati/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') -wget -q "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb" +RELEASE=$(curl -fsSL https://api.github.com/repos/duplicati/duplicati/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') +curl -fsSL "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb" -O $(basename "https://github.com/duplicati/duplicati/releases/download/v${RELEASE}/duplicati-${RELEASE}-linux-x64-gui.deb") $STD dpkg -i duplicati-${RELEASE}-linux-x64-gui.deb echo "${RELEASE}" >/opt/Duplicati_version.txt msg_ok "Finished setting up Duplicati" diff --git a/install/elementsynapse-install.sh b/install/elementsynapse-install.sh index 2c288fee0..7a462c9a5 100644 --- a/install/elementsynapse-install.sh +++ b/install/elementsynapse-install.sh @@ -23,7 +23,7 @@ msg_ok "Installed Dependencies" read -p "Please enter the name for your server: " servername msg_info "Installing Element Synapse" -wget -q -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg +curl -fsSL "https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg" -o "/usr/share/keyrings/matrix-org-archive-keyring.gpg" echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" >/etc/apt/sources.list.d/matrix-org.list $STD apt-get update echo "matrix-synapse-py3 matrix-synapse/server-name string $servername" | debconf-set-selections diff --git a/install/emby-install.sh b/install/emby-install.sh index 1e0a59945..b34d91dbc 100644 --- a/install/emby-install.sh +++ b/install/emby-install.sh @@ -24,10 +24,10 @@ if [[ "$CTTYPE" == "0" ]]; then fi msg_ok "Set Up Hardware Acceleration" -LATEST=$(curl -sL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +LATEST=$(curl -fsSLL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4) msg_info "Installing Emby" -wget -q https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb +curl -fsSL "https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb" -O $(basename "https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb") $STD dpkg -i emby-server-deb_${LATEST}_amd64.deb if [[ "$CTTYPE" == "0" ]]; then sed -i -e 's/^ssl-cert:x:104:$/render:x:104:root,emby/' -e 's/^render:x:108:root,emby$/ssl-cert:x:108:/' /etc/group diff --git a/install/ersatztv-install.sh b/install/ersatztv-install.sh index b6786f63e..1f0fcf977 100644 --- a/install/ersatztv-install.sh +++ b/install/ersatztv-install.sh @@ -15,7 +15,7 @@ update_os msg_info "Installing FFmpeg (Patience)" cd /usr/local/bin -wget -q https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz +curl -fsSL "https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz" -O $(basename "https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz") $STD tar -xvf ffmpeg-release-amd64-static.tar.xz rm -f ffmpeg-*.tar.xz cd ffmpeg-* @@ -37,8 +37,8 @@ msg_ok "Set Up Hardware Acceleration" msg_info "Installing ErsatzTV" temp_file=$(mktemp) cd /opt -RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1) -wget -qO- "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1) +curl -fsSL "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" -o "$temp_file" tar -xzf "$temp_file" mv /opt/ErsatzTV-${RELEASE}-linux-x64 /opt/ErsatzTV echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" diff --git a/install/excalidraw-install.sh b/install/excalidraw-install.sh index 5d273e713..461d8259b 100644 --- a/install/excalidraw-install.sh +++ b/install/excalidraw-install.sh @@ -33,8 +33,8 @@ msg_ok "Setup Node.js" msg_info "Setup Excalidraw" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar xzf $temp_file mv excalidraw-${RELEASE} /opt/excalidraw cd /opt/excalidraw diff --git a/install/fenrus-install.sh b/install/fenrus-install.sh index d9b8b986f..ce300c416 100644 --- a/install/fenrus-install.sh +++ b/install/fenrus-install.sh @@ -22,7 +22,7 @@ msg_info "Installing ASP.NET Core 7 SDK" var_os=$(grep "^ID=" /etc/os-release | cut -d'=' -f2 | tr -d '"') var_version=$(grep "^VERSION_ID=" /etc/os-release | cut -d'=' -f2 | tr -d '"') if [ "${var_os}" = "debian" ]; then - wget -q "https://packages.microsoft.com/config/debian/$var_version/packages-microsoft-prod.deb" + curl -fsSL "https://packages.microsoft.com/config/debian/$var_version/packages-microsoft-prod.deb" -O $(basename "https://packages.microsoft.com/config/debian/$var_version/packages-microsoft-prod.deb") $STD dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb fi diff --git a/install/fhem-install.sh b/install/fhem-install.sh index c5057c0c9..5f86d8fa0 100644 --- a/install/fhem-install.sh +++ b/install/fhem-install.sh @@ -19,7 +19,7 @@ $STD apt-get install -y gnupg2 msg_ok "Installed Dependencies" msg_info "Setting up Fhem Repository" -curl -sSf https://debian.fhem.de/archive.key | gpg --dearmor >/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg +curl -fsSLSf https://debian.fhem.de/archive.key | gpg --dearmor >/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg echo 'deb [signed-by=/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg] https://debian.fhem.de/nightly/ /' >/etc/apt/sources.list.d/fhem.list msg_ok "Set up Fhem Repository" diff --git a/install/fileflows-install.sh b/install/fileflows-install.sh index 0419aceed..477635ea8 100644 --- a/install/fileflows-install.sh +++ b/install/fileflows-install.sh @@ -6,7 +6,7 @@ # Source: https://fileflows.com/ # Import Functions und Setup -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors diff --git a/install/firefly-install.sh b/install/firefly-install.sh index 023732348..d87a4ec64 100644 --- a/install/firefly-install.sh +++ b/install/firefly-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing Dependencies" -curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg +curl -fsSLSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ bookworm main" >/etc/apt/sources.list.d/php.list $STD apt-get update $STD apt-get install -y \ @@ -42,9 +42,9 @@ mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVI msg_ok "Set up database" msg_info "Installing Firefly III (Patience)" -RELEASE=$(curl -s https://api.github.com/repos/firefly-iii/firefly-iii/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') +RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/firefly-iii/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') cd /opt -wget -q "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz" +curl -fsSL "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz" -O $(basename "https://github.com/firefly-iii/firefly-iii/releases/download/v${RELEASE}/FireflyIII-v${RELEASE}.tar.gz") mkdir -p /opt/firefly tar -xzf FireflyIII-v${RELEASE}.tar.gz -C /opt/firefly chown -R www-data:www-data /opt/firefly diff --git a/install/flaresolverr-install.sh b/install/flaresolverr-install.sh index 82909e62a..3c5ca4f38 100644 --- a/install/flaresolverr-install.sh +++ b/install/flaresolverr-install.sh @@ -21,15 +21,15 @@ $STD apt-get install -y xvfb msg_ok "Installed Dependencies" msg_info "Installing Chrome" -wget -qO- https://dl.google.com/linux/linux_signing_key.pub | gpg --dearmor -o /usr/share/keyrings/google-chrome.gpg +curl -fsSL "https://dl.google.com/linux/linux_signing_key.pub" | gpg --dearmor -o /usr/share/keyrings/google-chrome.gpg echo "deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" >/etc/apt/sources.list.d/google-chrome.list $STD apt update $STD apt install -y google-chrome-stable msg_ok "Installed Chrome" msg_info "Installing FlareSolverr" -RELEASE=$(wget -q https://github.com/FlareSolverr/FlareSolverr/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) -$STD wget -q https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz +RELEASE=$(curl -fsSL https://github.com/FlareSolverr/FlareSolverr/releases/latest | grep "title>Release" | cut -d " " -f 4) +$STD curl -fsSL "https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz" -O $STD tar -xzf flaresolverr_linux_x64.tar.gz -C /opt $STD rm flaresolverr_linux_x64.tar.gz echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/flowiseai-install.sh b/install/flowiseai-install.sh index 86a0dbd6e..2dfde4806 100644 --- a/install/flowiseai-install.sh +++ b/install/flowiseai-install.sh @@ -32,7 +32,7 @@ $STD npm install -g flowise \ @opentelemetry/sdk-trace-node \ langchainhub mkdir -p /opt/flowiseai -wget -q https://raw.githubusercontent.com/FlowiseAI/Flowise/main/packages/server/.env.example -O /opt/flowiseai/.env +curl -fsSL "https://raw.githubusercontent.com/FlowiseAI/Flowise/main/packages/server/.env.example" -o "/opt/flowiseai/.env" msg_ok "Installed FlowiseAI" msg_info "Creating Service" diff --git a/install/fluid-calendar-install.sh b/install/fluid-calendar-install.sh index ed5c83b17..c1dc64ab0 100644 --- a/install/fluid-calendar-install.sh +++ b/install/fluid-calendar-install.sh @@ -47,8 +47,8 @@ msg_ok "Set up Postgresql Database" msg_info "Setup ${APPLICATION}" tmp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -O $tmp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file" unzip -q $tmp_file mv ${APPLICATION}-${RELEASE}/ /opt/${APPLICATION} echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/forgejo-install.sh b/install/forgejo-install.sh index dcd4d044f..595790393 100644 --- a/install/forgejo-install.sh +++ b/install/forgejo-install.sh @@ -20,8 +20,8 @@ msg_ok "Installed Dependencies" msg_info "Installing Forgejo" mkdir -p /opt/forgejo -RELEASE=$(curl -s https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') -wget -qO /opt/forgejo/forgejo-$RELEASE-linux-amd64 "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" +RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') +curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "/opt/forgejo/forgejo-$RELEASE-linux-amd64" chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64 ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo msg_ok "Installed Forgejo" diff --git a/install/freshrss-install.sh b/install/freshrss-install.sh index cd287846b..da4de9746 100644 --- a/install/freshrss-install.sh +++ b/install/freshrss-install.sh @@ -36,9 +36,9 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMP msg_ok "Set up PostgreSQL" msg_info "Installing FreshRSS" -RELEASE=$(curl -s https://api.github.com/repos/FreshRSS/FreshRSS/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/FreshRSS/FreshRSS/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') cd /opt -wget -q "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/${RELEASE}.zip") unzip -q "${RELEASE}.zip" mv "/opt/FreshRSS-${RELEASE}" /opt/freshrss cd /opt/freshrss diff --git a/install/frigate-install.sh b/install/frigate-install.sh index 91a2bc79d..bd4128711 100644 --- a/install/frigate-install.sh +++ b/install/frigate-install.sh @@ -34,7 +34,7 @@ msg_ok "Installed Node.js" msg_info "Installing go2rtc" mkdir -p /usr/local/go2rtc/bin cd /usr/local/go2rtc/bin -wget -qO go2rtc "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64" +curl -fsSL "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64" -o "go2rtc" chmod +x go2rtc $STD ln -svf /usr/local/go2rtc/bin/go2rtc /usr/local/bin/go2rtc msg_ok "Installed go2rtc" @@ -48,13 +48,13 @@ if [[ "$CTTYPE" == "0" ]]; then fi msg_ok "Set Up Hardware Acceleration" -#RELEASE=$(curl -s https://api.github.com/repos/blakeblackshear/frigate/releases/latest | jq -r '.tag_name') +#RELEASE=$(curl -fsSL https://api.github.com/repos/blakeblackshear/frigate/releases/latest | jq -r '.tag_name') msg_ok "Stop spinner to prevent segmentation fault" msg_info "Installing Frigate v0.14.1 (Perseverance)" if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi cd ~ mkdir -p /opt/frigate/models -wget -q https://github.com/blakeblackshear/frigate/archive/refs/tags/v0.14.1.tar.gz -O frigate.tar.gz +curl -fsSL "https://github.com/blakeblackshear/frigate/archive/refs/tags/v0.14.1.tar.gz" -o "frigate.tar.gz" tar -xzf frigate.tar.gz -C /opt/frigate --strip-components 1 rm -rf frigate.tar.gz cd /opt/frigate @@ -114,7 +114,7 @@ if grep -q -o -m1 -E 'avx[^ ]*' /proc/cpuinfo; then $STD /usr/local/bin/omz_converter --name ssdlite_mobilenet_v2 --precision FP16 --mo /usr/local/bin/mo cd / cp -r /opt/frigate/models/public/ssdlite_mobilenet_v2 openvino-model - wget -q https://github.com/openvinotoolkit/open_model_zoo/raw/master/data/dataset_classes/coco_91cl_bkgr.txt -O openvino-model/coco_91cl_bkgr.txt + curl -fsSL "https://github.com/openvinotoolkit/open_model_zoo/raw/master/data/dataset_classes/coco_91cl_bkgr.txt" -o "openvino-model/coco_91cl_bkgr.txt" sed -i 's/truck/car/g' openvino-model/coco_91cl_bkgr.txt cat <>/config/config.yml detectors: @@ -142,7 +142,7 @@ msg_info "Installing Coral Object Detection Model (Patience)" cd /opt/frigate export CCACHE_DIR=/root/.ccache export CCACHE_MAXSIZE=2G -wget -q https://github.com/libusb/libusb/archive/v1.0.26.zip +curl -fsSL "https://github.com/libusb/libusb/archive/v1.0.26.zip" -O $(basename "https://github.com/libusb/libusb/archive/v1.0.26.zip") unzip -q v1.0.26.zip rm v1.0.26.zip cd libusb-1.0.26 @@ -156,16 +156,16 @@ mkdir -p /usr/local/include/libusb-1.0 $STD /usr/bin/install -c -m 644 libusb.h '/usr/local/include/libusb-1.0' ldconfig cd / -wget -qO edgetpu_model.tflite https://github.com/google-coral/test_data/raw/release-frogfish/ssdlite_mobiledet_coco_qat_postprocess_edgetpu.tflite -wget -qO cpu_model.tflite https://github.com/google-coral/test_data/raw/release-frogfish/ssdlite_mobiledet_coco_qat_postprocess.tflite +curl -fsSL "https://github.com/google-coral/test_data/raw/release-frogfish/ssdlite_mobiledet_coco_qat_postprocess_edgetpu.tflite" -o "edgetpu_model.tflite" +curl -fsSL "https://github.com/google-coral/test_data/raw/release-frogfish/ssdlite_mobiledet_coco_qat_postprocess.tflite" -o "cpu_model.tflite" cp /opt/frigate/labelmap.txt /labelmap.txt -wget -qO yamnet-tflite-classification-tflite-v1.tar.gz https://www.kaggle.com/api/v1/models/google/yamnet/tfLite/classification-tflite/1/download +curl -fsSL "https://www.kaggle.com/api/v1/models/google/yamnet/tfLite/classification-tflite/1/download" -o "yamnet-tflite-classification-tflite-v1.tar.gz" tar xzf yamnet-tflite-classification-tflite-v1.tar.gz rm -rf yamnet-tflite-classification-tflite-v1.tar.gz mv 1.tflite cpu_audio_model.tflite cp /opt/frigate/audio-labelmap.txt /audio-labelmap.txt mkdir -p /media/frigate -wget -qO /media/frigate/person-bicycle-car-detection.mp4 https://github.com/intel-iot-devkit/sample-videos/raw/master/person-bicycle-car-detection.mp4 +curl -fsSL "https://github.com/intel-iot-devkit/sample-videos/raw/master/person-bicycle-car-detection.mp4" -o "/media/frigate/person-bicycle-car-detection.mp4" msg_ok "Installed Coral Object Detection Model" msg_info "Building Nginx with Custom Modules" diff --git a/install/gitea-install.sh b/install/gitea-install.sh index 64dabb738..719cdb1d9 100644 --- a/install/gitea-install.sh +++ b/install/gitea-install.sh @@ -20,8 +20,8 @@ $STD apt-get install -y sqlite3 msg_ok "Installed Dependencies" msg_info "Installing Gitea" -RELEASE=$(wget -q https://github.com/go-gitea/gitea/releases/latest -O - | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//') -wget -q https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64 +RELEASE=$(curl -fsSL https://github.com/go-gitea/gitea/releases/latest | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//') +curl -fsSL "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64" -O $(basename "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64") mv gitea* /usr/local/bin/gitea chmod +x /usr/local/bin/gitea adduser --system --group --disabled-password --shell /bin/bash --home /etc/gitea gitea >/dev/null diff --git a/install/glance-install.sh b/install/glance-install.sh index 442a454c1..f1887f850 100644 --- a/install/glance-install.sh +++ b/install/glance-install.sh @@ -14,9 +14,9 @@ network_check update_os msg_info "Installing Glance" -RELEASE=$(curl -s https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz +curl -fsSL "https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz" -O $(basename "https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz") mkdir -p /opt/glance tar -xzf glance-linux-amd64.tar.gz -C /opt/glance cat </opt/glance/glance.yml diff --git a/install/glpi-install.sh b/install/glpi-install.sh index 6f49a782d..2ce96eeac 100644 --- a/install/glpi-install.sh +++ b/install/glpi-install.sh @@ -42,8 +42,8 @@ msg_ok "Set up database" msg_info "Installing GLPi" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') -wget -q "https://github.com/glpi-project/glpi/releases/download/${RELEASE}/glpi-${RELEASE}.tgz" +RELEASE=$(curl -fsSL https://api.github.com/repos/glpi-project/glpi/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') +curl -fsSL "https://github.com/glpi-project/glpi/releases/download/${RELEASE}/glpi-${RELEASE}.tgz" -O $(basename "https://github.com/glpi-project/glpi/releases/download/${RELEASE}/glpi-${RELEASE}.tgz") $STD tar -xzvf glpi-${RELEASE}.tgz cd /opt/glpi $STD php bin/console db:install --db-name=$DB_NAME --db-user=$DB_USER --db-password=$DB_PASS --no-interaction diff --git a/install/go2rtc-install.sh b/install/go2rtc-install.sh index b70b505a4..6ca7fa048 100644 --- a/install/go2rtc-install.sh +++ b/install/go2rtc-install.sh @@ -16,7 +16,7 @@ update_os msg_info "Installing go2rtc" mkdir -p /opt/go2rtc cd /opt/go2rtc -wget -q https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64 +curl -fsSL "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64" -O $(basename "https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64") chmod +x go2rtc_linux_amd64 msg_ok "Installed go2rtc" diff --git a/install/gokapi-install.sh b/install/gokapi-install.sh index f167cf9c8..dc6ef6f44 100644 --- a/install/gokapi-install.sh +++ b/install/gokapi-install.sh @@ -14,9 +14,9 @@ network_check update_os msg_info "Installing Gokapi" -LATEST=$(curl -sL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +LATEST=$(curl -fsSLL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) mkdir -p /opt/gokapi/{data,config} -wget -q https://github.com/Forceu/Gokapi/releases/download/$LATEST/gokapi-linux_amd64.zip +curl -fsSL "https://github.com/Forceu/Gokapi/releases/download/$LATEST/gokapi-linux_amd64.zip" -O $(basename "https://github.com/Forceu/Gokapi/releases/download/$LATEST/gokapi-linux_amd64.zip") unzip -q gokapi-linux_amd64.zip -d /opt/gokapi rm gokapi-linux_amd64.zip chmod +x /opt/gokapi/gokapi-linux_amd64 diff --git a/install/gotify-install.sh b/install/gotify-install.sh index 17de14229..1df880aca 100644 --- a/install/gotify-install.sh +++ b/install/gotify-install.sh @@ -14,10 +14,10 @@ network_check update_os msg_info "Installing Gotify" -RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir -p /opt/gotify cd /opt/gotify -wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip +curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -O $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip") unzip -q gotify-linux-amd64.zip rm -rf gotify-linux-amd64.zip chmod +x gotify-linux-amd64 diff --git a/install/grafana-install.sh b/install/grafana-install.sh index 4a532b8e8..46caaf5d4 100644 --- a/install/grafana-install.sh +++ b/install/grafana-install.sh @@ -20,7 +20,7 @@ $STD apt-get install -y software-properties-common msg_ok "Installed Dependencies" msg_info "Setting up Grafana Repository" -wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key +curl -fsSL "https://apt.grafana.com/gpg.key" -o "/usr/share/keyrings/grafana.key" sh -c 'echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list' msg_ok "Set up Grafana Repository" diff --git a/install/graylog-install.sh b/install/graylog-install.sh index 4f89ad7b6..4a9009142 100644 --- a/install/graylog-install.sh +++ b/install/graylog-install.sh @@ -28,7 +28,7 @@ msg_ok "Setup MongoDB" msg_info "Setup Graylog Data Node" PASSWORD_SECRET=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16) -wget -q https://packages.graylog2.org/repo/packages/graylog-6.1-repository_latest.deb +curl -fsSL "https://packages.graylog2.org/repo/packages/graylog-6.1-repository_latest.deb" -O $(basename "https://packages.graylog2.org/repo/packages/graylog-6.1-repository_latest.deb") $STD dpkg -i graylog-6.1-repository_latest.deb $STD apt-get update $STD apt-get install graylog-datanode -y diff --git a/install/grist-install.sh b/install/grist-install.sh index e41493f47..3a43b28cc 100644 --- a/install/grist-install.sh +++ b/install/grist-install.sh @@ -32,11 +32,11 @@ $STD npm install -g yarn msg_ok "Installed Node.js" msg_info "Installing Grist" -RELEASE=$(curl -s https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') export CYPRESS_INSTALL_BINARY=0 export NODE_OPTIONS="--max-old-space-size=2048" cd /opt -wget -q https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip +curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip") unzip -q v$RELEASE.zip mv grist-core-${RELEASE} grist cd grist diff --git a/install/grocy-install.sh b/install/grocy-install.sh index af0ea3104..bde660482 100644 --- a/install/grocy-install.sh +++ b/install/grocy-install.sh @@ -19,7 +19,7 @@ msg_ok "Installed Dependencies" msg_info "Installing PHP8.2" VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)" -curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg +curl -fsSLSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg echo -e "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $VERSION main" >/etc/apt/sources.list.d/php.list $STD apt-get update $STD apt-get install -y php8.2 @@ -31,8 +31,8 @@ $STD apt-get install -y php8.2-mbstring msg_ok "Installed PHP8.2" msg_info "Installing grocy" -latest=$(curl -s https://api.github.com/repos/grocy/grocy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/grocy/grocy/releases/download/v${latest}/grocy_${latest}.zip +latest=$(curl -fsSL https://api.github.com/repos/grocy/grocy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/grocy/grocy/releases/download/v${latest}/grocy_${latest}.zip" -O $(basename "https://github.com/grocy/grocy/releases/download/v${latest}/grocy_${latest}.zip") $STD unzip grocy_${latest}.zip -d /var/www/html chown -R www-data:www-data /var/www/html cp /var/www/html/config-dist.php /var/www/html/data/config.php diff --git a/install/habitica-install.sh b/install/habitica-install.sh index 443a33c9b..14a3b5537 100644 --- a/install/habitica-install.sh +++ b/install/habitica-install.sh @@ -19,7 +19,7 @@ $STD apt-get install -y \ gnupg \ build-essential \ git -wget -q http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb +curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb" -O $(basename "http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb") $STD dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb msg_ok "Installed Dependencies" @@ -36,8 +36,8 @@ msg_ok "Setup Node.js" msg_info "Setup ${APPLICATION}" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/HabitRPG/habitica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/HabitRPG/habitica/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/HabitRPG/habitica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/HabitRPG/habitica/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv habitica-${RELEASE}/ /opt/habitica cd /opt/habitica diff --git a/install/headscale-install.sh b/install/headscale-install.sh index 9a523f4df..4d93b15df 100644 --- a/install/headscale-install.sh +++ b/install/headscale-install.sh @@ -13,9 +13,9 @@ setting_up_container network_check update_os -RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing ${APPLICATION} v${RELEASE}" -wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb +curl -fsSL "https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb") $STD dpkg -i headscale_${RELEASE}_linux_amd64.deb systemctl enable -q --now headscale echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/heimdall-dashboard-install.sh b/install/heimdall-dashboard-install.sh index dfc80d4f3..47864dc06 100644 --- a/install/heimdall-dashboard-install.sh +++ b/install/heimdall-dashboard-install.sh @@ -19,12 +19,12 @@ $STD apt-get install -y composer $STD apt-get install -y php8.2-{bz2,curl,sqlite3,zip,xml} msg_ok "Installed Dependencies" -RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') +RELEASE=$(curl -fsSLX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') echo "${RELEASE}" >/opt/${APPLICATION}_version.txt msg_info "Installing Heimdall Dashboard ${RELEASE}" -wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz +curl -fsSL "https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz" -O $(basename "https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz") tar xzf ${RELEASE}.tar.gz -VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +VER=$(curl -fsSL https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') rm -rf ${RELEASE}.tar.gz mv Heimdall-${VER} /opt/Heimdall cd /opt/Heimdall diff --git a/install/hev-socks5-server-install.sh b/install/hev-socks5-server-install.sh index 68e24fd21..8600442f2 100644 --- a/install/hev-socks5-server-install.sh +++ b/install/hev-socks5-server-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Setup ${APPLICATION}" -RELEASE=$(curl -s https://api.github.com/repos/heiher/${APPLICATION}/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/heiher/${APPLICATION}/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') curl -L -o "${APPLICATION}" "https://github.com/heiher/${APPLICATION}/releases/download/${RELEASE}/hev-socks5-server-linux-x86_64" mv ${APPLICATION} /opt/${APPLICATION} chmod +x /opt/${APPLICATION} diff --git a/install/hivemq-install.sh b/install/hivemq-install.sh index 45bfab281..abac64895 100644 --- a/install/hivemq-install.sh +++ b/install/hivemq-install.sh @@ -18,15 +18,15 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing OpenJDK" -wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo 'deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/adoptium.gpg] https://packages.adoptium.net/artifactory/deb bookworm main' >/etc/apt/sources.list.d/adoptium.list $STD apt-get update $STD apt-get install -y temurin-17-jre msg_ok "Installed OpenJDK" msg_info "Installing HiveMQ CE" -RELEASE=$(curl -s https://api.github.com/repos/hivemq/hivemq-community-edition/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/hivemq/hivemq-community-edition/releases/download/${RELEASE}/hivemq-ce-${RELEASE}.zip +RELEASE=$(curl -fsSL https://api.github.com/repos/hivemq/hivemq-community-edition/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/hivemq/hivemq-community-edition/releases/download/${RELEASE}/hivemq-ce-${RELEASE}.zip" -O $(basename "https://github.com/hivemq/hivemq-community-edition/releases/download/${RELEASE}/hivemq-ce-${RELEASE}.zip") unzip -q hivemq-ce-${RELEASE}.zip mkdir -p /opt/hivemq mv hivemq-ce-${RELEASE}/* /opt/hivemq diff --git a/install/hoarder-install.sh b/install/hoarder-install.sh index e1e6e2a52..d90da3fd4 100644 --- a/install/hoarder-install.sh +++ b/install/hoarder-install.sh @@ -27,17 +27,17 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Installing Additional Tools" -wget -q https://github.com/Y2Z/monolith/releases/latest/download/monolith-gnu-linux-x86_64 -O /usr/bin/monolith +curl -fsSL "https://github.com/Y2Z/monolith/releases/latest/download/monolith-gnu-linux-x86_64" -o "/usr/bin/monolith" chmod +x /usr/bin/monolith -wget -q https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -O /usr/bin/yt-dlp +curl -fsSL "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" -o "/usr/bin/yt-dlp" chmod +x /usr/bin/yt-dlp msg_ok "Installed Additional Tools" msg_info "Installing Meilisearch" cd /tmp -wget -q https://github.com/meilisearch/meilisearch/releases/latest/download/meilisearch.deb +curl -fsSL "https://github.com/meilisearch/meilisearch/releases/latest/download/meilisearch.deb" -O $(basename "https://github.com/meilisearch/meilisearch/releases/latest/download/meilisearch.deb") $STD dpkg -i meilisearch.deb -wget -q https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml -O /etc/meilisearch.toml +curl -fsSL "https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml" -o "/etc/meilisearch.toml" MASTER_KEY=$(openssl rand -base64 12) sed -i \ -e 's|^env =.*|env = "production"|' \ @@ -60,8 +60,8 @@ msg_ok "Installed Node.js" msg_info "Installing Hoarder" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv hoarder-${RELEASE} /opt/hoarder cd /opt/hoarder diff --git a/install/homarr-install.sh b/install/homarr-install.sh index f6bca857e..3805adc6b 100644 --- a/install/homarr-install.sh +++ b/install/homarr-install.sh @@ -40,8 +40,8 @@ msg_ok "Installed Node.js/pnpm" msg_info "Installing Homarr (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/homarr-labs/homarr/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv homarr-${RELEASE} /opt/homarr mkdir -p /opt/homarr_db diff --git a/install/homeassistant-install.sh b/install/homeassistant-install.sh index eb1b24af2..dd61bb6b0 100644 --- a/install/homeassistant-install.sh +++ b/install/homeassistant-install.sh @@ -27,7 +27,7 @@ $STD pip install runlike msg_ok "Installed runlike" get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } DOCKER_LATEST_VERSION=$(get_latest_release "moby/moby") @@ -38,7 +38,7 @@ msg_info "Installing Docker $DOCKER_LATEST_VERSION" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json -$STD sh <(curl -sSL https://get.docker.com) +$STD sh <(curl -fsSLSL https://get.docker.com) msg_ok "Installed Docker $DOCKER_LATEST_VERSION" msg_info "Pulling Portainer $PORTAINER_LATEST_VERSION Image" diff --git a/install/homebox-install.sh b/install/homebox-install.sh index 8c0df5955..2e3361889 100644 --- a/install/homebox-install.sh +++ b/install/homebox-install.sh @@ -15,8 +15,8 @@ network_check update_os msg_info "Installing Homebox" -RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt +RELEASE=$(curl -fsSL https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz" | tar -xzf - -C /opt chmod +x /opt/homebox cat </opt/.env # For possible environment variables check here: https://homebox.software/en/configure-homebox diff --git a/install/homebridge-install.sh b/install/homebridge-install.sh index cc0013e08..a99ace193 100644 --- a/install/homebridge-install.sh +++ b/install/homebridge-install.sh @@ -19,7 +19,7 @@ $STD apt-get install -y gnupg2 msg_ok "Installed Dependencies" msg_info "Setting up Homebridge Repository" -curl -sSf https://repo.homebridge.io/KEY.gpg | gpg --dearmor >/etc/apt/trusted.gpg.d/homebridge.gpg +curl -fsSLSf https://repo.homebridge.io/KEY.gpg | gpg --dearmor >/etc/apt/trusted.gpg.d/homebridge.gpg echo 'deb [signed-by=/etc/apt/trusted.gpg.d/homebridge.gpg] https://repo.homebridge.io stable main' >/etc/apt/sources.list.d/homebridge.list msg_ok "Set up Homebridge Repository" diff --git a/install/homepage-install.sh b/install/homepage-install.sh index 1b7ba5a73..4fdf6fdf1 100644 --- a/install/homepage-install.sh +++ b/install/homepage-install.sh @@ -30,7 +30,7 @@ $STD npm install -g pnpm msg_ok "Installed Node.js" LOCAL_IP=$(hostname -I | awk '{print $1}') -RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing Homepage v${RELEASE} (Patience)" curl -fsSL "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz" -o $(basename "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz") $STD tar -xzf v${RELEASE}.tar.gz diff --git a/install/homer-install.sh b/install/homer-install.sh index 36b393224..a9cfd457b 100644 --- a/install/homer-install.sh +++ b/install/homer-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Homer" mkdir -p /opt/homer cd /opt/homer -wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip +curl -fsSL "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip" -O $(basename "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip") $STD unzip homer.zip rm -rf homer.zip cp assets/config.yml.dist assets/config.yml diff --git a/install/hyperion-install.sh b/install/hyperion-install.sh index 2abf73d3c..495234ed7 100644 --- a/install/hyperion-install.sh +++ b/install/hyperion-install.sh @@ -22,7 +22,7 @@ $STD apt-get install -y libpython3.11 msg_ok "Installed Dependencies" msg_info "Installing Hyperion" -wget -qO- https://releases.hyperion-project.org/hyperion.pub.key | gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg +curl -fsSL "https://releases.hyperion-project.org/hyperion.pub.key" | gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg echo "deb [signed-by=/usr/share/keyrings/hyperion.pub.gpg] https://apt.releases.hyperion-project.org/ $(lsb_release -cs) main" >/etc/apt/sources.list.d/hyperion.list $STD apt-get update $STD apt-get install -y hyperion diff --git a/install/influxdb-install.sh b/install/influxdb-install.sh index cadfe3c37..8b71a248c 100644 --- a/install/influxdb-install.sh +++ b/install/influxdb-install.sh @@ -20,7 +20,7 @@ $STD apt-get install -y gnupg2 msg_ok "Installed Dependencies" msg_info "Setting up InfluxDB Repository" -wget -qO- https://repos.influxdata.com/influxdata-archive_compat.key | gpg --dearmor >/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg +curl -fsSL "https://repos.influxdata.com/influxdata-archive_compat.key" | gpg --dearmor >/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main" >/etc/apt/sources.list.d/influxdata.list msg_ok "Set up InfluxDB Repository" @@ -37,7 +37,7 @@ if [[ $INFLUX == "2" ]]; then $STD apt-get install -y influxdb2 else $STD apt-get install -y influxdb - wget -q https://dl.influxdata.com/chronograf/releases/chronograf_1.10.1_amd64.deb + curl -fsSL "https://dl.influxdata.com/chronograf/releases/chronograf_1.10.1_amd64.deb" -O $(basename "https://dl.influxdata.com/chronograf/releases/chronograf_1.10.1_amd64.deb") $STD dpkg -i chronograf_1.10.1_amd64.deb fi $STD systemctl enable --now influxdb diff --git a/install/inspircd-install.sh b/install/inspircd-install.sh index d0c6ba250..e69dd6610 100644 --- a/install/inspircd-install.sh +++ b/install/inspircd-install.sh @@ -14,9 +14,9 @@ network_check update_os msg_info "Installing InspIRCd" -RELEASE=$(curl -s https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb +curl -fsSL "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb" -O $(basename "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb") $STD apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y &>/dev/null cat </etc/inspircd/inspircd.conf diff --git a/install/inventree-install.sh b/install/inventree-install.sh index a51c1555e..261c4ebf1 100644 --- a/install/inventree-install.sh +++ b/install/inventree-install.sh @@ -16,7 +16,7 @@ update_os msg_info "Installing Dependencies" $STD apt-get install -y gnupg temp_file=$(mktemp) -wget -q http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb -O $temp_file +curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb" -o "$temp_file" $STD dpkg -i $temp_file msg_ok "Installed Dependencies" diff --git a/install/iventoy-install.sh b/install/iventoy-install.sh index ba25fdd4d..452771ba3 100644 --- a/install/iventoy-install.sh +++ b/install/iventoy-install.sh @@ -13,10 +13,10 @@ setting_up_container network_check update_os -RELEASE=$(curl -s https://api.github.com/repos/ventoy/pxe/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/ventoy/pxe/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing iVentoy v${RELEASE}" mkdir -p /opt/iventoy/{data,iso} -wget -q https://github.com/ventoy/PXE/releases/download/v${RELEASE}/iventoy-${RELEASE}-linux-free.tar.gz +curl -fsSL "https://github.com/ventoy/PXE/releases/download/v${RELEASE}/iventoy-${RELEASE}-linux-free.tar.gz" -O $(basename "https://github.com/ventoy/PXE/releases/download/v${RELEASE}/iventoy-${RELEASE}-linux-free.tar.gz") tar -C /tmp -xzf iventoy*.tar.gz mv /tmp/iventoy*/* /opt/iventoy/ rm -rf iventoy*.tar.gz diff --git a/install/jackett-install.sh b/install/jackett-install.sh index 3c93ef694..3a80cdf7b 100644 --- a/install/jackett-install.sh +++ b/install/jackett-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Jackett" -RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) -wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz +RELEASE=$(curl -fsSL https://github.com/Jackett/Jackett/releases/latest | grep "title>Release" | cut -d " " -f 4) +curl -fsSL "https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz" -O $(basename "https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz") tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt rm -rf Jackett.Binaries.LinuxAMDx64.tar.gz echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/jenkins-install.sh b/install/jenkins-install.sh index 55d4398c6..f7e980729 100644 --- a/install/jenkins-install.sh +++ b/install/jenkins-install.sh @@ -17,7 +17,7 @@ $STD apt-get install -y openjdk-17-jre msg_ok "Installed Dependencies" msg_info "Setup Jenkins" -wget -qO /usr/share/keyrings/jenkins-keyring.asc https://pkg.jenkins.io/debian/jenkins.io-2023.key +curl -fsSL "https://pkg.jenkins.io/debian/jenkins.io-2023.key" -o "/usr/share/keyrings/jenkins-keyring.asc" echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" https://pkg.jenkins.io/debian binary/ >/etc/apt/sources.list.d/jenkins.list $STD apt-get update $STD apt-get install -y jenkins diff --git a/install/kavita-install.sh b/install/kavita-install.sh index 0e98a210f..0c2b1a059 100644 --- a/install/kavita-install.sh +++ b/install/kavita-install.sh @@ -15,7 +15,7 @@ update_os msg_info "Installing Kavita" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') $STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner msg_ok "Installed Kavita" diff --git a/install/keycloak-install.sh b/install/keycloak-install.sh index 472187d44..b59506095 100644 --- a/install/keycloak-install.sh +++ b/install/keycloak-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y gnupg msg_ok "Installed Dependencies" msg_info "Installing OpenJDK" -wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo 'deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/adoptium.gpg] https://packages.adoptium.net/artifactory/deb bookworm main' >/etc/apt/sources.list.d/adoptium.list $STD apt-get update $STD apt-get install -y temurin-21-jre @@ -26,8 +26,8 @@ msg_ok "Installed OpenJDK" msg_info "Installing Keycloak" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz" -o "$temp_file" tar xzf $temp_file mv keycloak-$RELEASE /opt/keycloak msg_ok "Installed Keycloak" diff --git a/install/kimai-install.sh b/install/kimai-install.sh index de282959e..8ad22f2c6 100644 --- a/install/kimai-install.sh +++ b/install/kimai-install.sh @@ -25,7 +25,7 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Setup PHP8.4 Repository" -$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb +$STD curl -fsSLSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb $STD dpkg -i /tmp/debsuryorg-archive-keyring.deb $STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' $STD apt-get update @@ -57,8 +57,8 @@ mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVI msg_ok "Set up database" msg_info "Installing Kimai (Patience)" -RELEASE=$(curl -s https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv kimai-${RELEASE} /opt/kimai cd /opt/kimai diff --git a/install/koillection-install.sh b/install/koillection-install.sh index 8a844b50a..3f2af63fd 100644 --- a/install/koillection-install.sh +++ b/install/koillection-install.sh @@ -21,7 +21,7 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Setup PHP8.4 Repository" -$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb +$STD curl -fsSLSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb $STD dpkg -i /tmp/debsuryorg-archive-keyring.deb $STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' $STD apt-get update @@ -60,9 +60,9 @@ $STD npm install -g yarn msg_ok "Installed Node.js/Yarn" msg_info "Installing Koillection" -RELEASE=$(curl -s https://api.github.com/repos/benjaminjonard/koillection/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/benjaminjonard/koillection/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') cd /opt -wget -q "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip") unzip -q "${RELEASE}.zip" mv "/opt/koillection-${RELEASE}" /opt/koillection cd /opt/koillection diff --git a/install/kometa-install.sh b/install/kometa-install.sh index 540629f81..5a3378792 100644 --- a/install/kometa-install.sh +++ b/install/kometa-install.sh @@ -20,8 +20,8 @@ msg_ok "Setup Python 3" msg_info "Setup Kometa" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/Kometa-Team/Kometa/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/Kometa-Team/Kometa/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" mv Kometa-${RELEASE} /opt/kometa cd /opt/kometa diff --git a/install/komga-install.sh b/install/komga-install.sh index 63db9397a..4d63d8b67 100644 --- a/install/komga-install.sh +++ b/install/komga-install.sh @@ -18,8 +18,8 @@ $STD apt-get install -y openjdk-17-jre msg_ok "Installed Dependencies" msg_info "Installing Komga" -RELEASE=$(curl -s https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar +RELEASE=$(curl -fsSL https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar" -O $(basename "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar") mkdir -p /opt/komga mv -f komga-${RELEASE}.jar /opt/komga/komga.jar echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" diff --git a/install/komodo-install.sh b/install/komodo-install.sh index 659ed7c3f..d482655b3 100644 --- a/install/komodo-install.sh +++ b/install/komodo-install.sh @@ -61,10 +61,10 @@ case $DB_CHOICE in esac mkdir -p /opt/komodo cd /opt/komodo -wget -q "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/$DB_COMPOSE_FILE" +curl -fsSL "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/$DB_COMPOSE_FILE" -O $(basename "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/$DB_COMPOSE_FILE") msg_info "Setup Komodo Environment" -wget -q -O /opt/komodo/compose.env https://raw.githubusercontent.com/mbecker20/komodo/main/compose/compose.env +curl -fsSL "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/compose.env" -o "/opt/komodo/compose.env" DB_PASSWORD=$(openssl rand -base64 16 | tr -d '/+=') PASSKEY=$(openssl rand -base64 24 | tr -d '/+=') WEBHOOK_SECRET=$(openssl rand -base64 24 | tr -d '/+=') diff --git a/install/kubo-install.sh b/install/kubo-install.sh index c7471927a..e21570a77 100644 --- a/install/kubo-install.sh +++ b/install/kubo-install.sh @@ -19,8 +19,8 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing IPFS" -RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) -$STD wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" +RELEASE=$(curl -fsSL https://github.com/ipfs/kubo/releases/latest | grep "title>Release" | cut -d " " -f 4) +$STD curl -fsSL "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz" -O tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local $STD ln -s /usr/local/kubo/ipfs /usr/local/bin/ipfs $STD ipfs init diff --git a/install/lidarr-install.sh b/install/lidarr-install.sh index 301c21011..5d9b0a489 100644 --- a/install/lidarr-install.sh +++ b/install/lidarr-install.sh @@ -22,7 +22,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Lidarr" mkdir -p /var/lib/lidarr/ chmod 775 /var/lib/lidarr/ -$STD wget --content-disposition 'https://lidarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' +$STD curl -fJL 'https://lidarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' $STD tar -xvzf Lidarr.master.*.tar.gz mv Lidarr /opt chmod 775 /opt/Lidarr diff --git a/install/linkwarden-install.sh b/install/linkwarden-install.sh index 91f6483cb..d4698785b 100644 --- a/install/linkwarden-install.sh +++ b/install/linkwarden-install.sh @@ -37,7 +37,7 @@ $STD npm install -g yarn msg_ok "Installed Node.js/Yarn" msg_info "Installing Rust" -wget -qL https://sh.rustup.rs +curl -fsSL https://sh.rustup.rs -O $STD bash index.html -y --profile minimal echo 'export PATH=~/.cargo/bin:$PATH' >>~/.bashrc export PATH=~/.cargo/bin:$PATH @@ -91,8 +91,8 @@ fi msg_info "Installing Linkwarden (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv linkwarden-${RELEASE:1} /opt/linkwarden cd /opt/linkwarden diff --git a/install/listmonk-install.sh b/install/listmonk-install.sh index 4896af051..42e9abe88 100644 --- a/install/listmonk-install.sh +++ b/install/listmonk-install.sh @@ -35,8 +35,8 @@ msg_info "Installing listmonk" cd /opt mkdir /opt/listmonk mkdir /opt/listmonk/uploads -RELEASE=$(curl -s https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz" +RELEASE=$(curl -fsSL https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz") tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk $STD /opt/listmonk/listmonk --new-config --config /opt/listmonk/config.toml diff --git a/install/lubelogger-install.sh b/install/lubelogger-install.sh index 43323e725..e45935933 100644 --- a/install/lubelogger-install.sh +++ b/install/lubelogger-install.sh @@ -20,10 +20,10 @@ msg_ok "Installed Dependencies" msg_info "Installing LubeLogger" cd /opt mkdir -p /opt/lubelogger -RELEASE=$(curl -s https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE_TRIMMED=$(echo "${RELEASE}" | tr -d ".") cd /opt/lubelogger -wget -q https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip +curl -fsSL "https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip" -O $(basename "https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip") unzip -q LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip chmod 700 /opt/lubelogger/CarCareTracker cp /opt/lubelogger/appsettings.json /opt/lubelogger/appsettings_bak.json diff --git a/install/mafl-install.sh b/install/mafl-install.sh index daa3a4e21..4bcd01654 100644 --- a/install/mafl-install.sh +++ b/install/mafl-install.sh @@ -34,12 +34,12 @@ $STD npm install -g npm@latest $STD npm install -g yarn msg_ok "Installed Node.js" -RELEASE=$(curl -s https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing Mafl v${RELEASE}" -wget -q https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz +curl -fsSL "https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz") tar -xzf v${RELEASE}.tar.gz mkdir -p /opt/mafl/data -wget -q -O /opt/mafl/data/config.yml https://raw.githubusercontent.com/hywax/mafl/main/.example/config.yml +curl -fsSL "https://raw.githubusercontent.com/hywax/mafl/main/.example/config.yml" -o "/opt/mafl/data/config.yml" mv mafl-${RELEASE}/* /opt/mafl rm -rf mafl-${RELEASE} cd /opt/mafl diff --git a/install/magicmirror-install.sh b/install/magicmirror-install.sh index 58345e8b4..59d582352 100644 --- a/install/magicmirror-install.sh +++ b/install/magicmirror-install.sh @@ -30,8 +30,8 @@ msg_ok "Installed Node.js" msg_info "Setup MagicMirror" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/MagicMirrorOrg/MagicMirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/MagicMirrorOrg/MagicMirror/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/MagicMirrorOrg/MagicMirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/MagicMirrorOrg/MagicMirror/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" mv MagicMirror-${RELEASE} /opt/magicmirror cd /opt/magicmirror diff --git a/install/mariadb-install.sh b/install/mariadb-install.sh index 94bcb6c76..07796c75f 100644 --- a/install/mariadb-install.sh +++ b/install/mariadb-install.sh @@ -32,7 +32,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then php-json \ php-curl - wget -q "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz" + curl -fsSL "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz" -O $(basename "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz") mkdir -p /var/www/html/phpMyAdmin tar xf phpMyAdmin-5.2.1-all-languages.tar.gz --strip-components=1 -C /var/www/html/phpMyAdmin cp /var/www/html/phpMyAdmin/config.sample.inc.php /var/www/html/phpMyAdmin/config.inc.php diff --git a/install/mattermost-install.sh b/install/mattermost-install.sh index d94703778..0a364654b 100644 --- a/install/mattermost-install.sh +++ b/install/mattermost-install.sh @@ -38,8 +38,8 @@ msg_ok "Set up PostgreSQL" msg_info "Installing Mattermost" IPADDRESS=$(hostname -I | awk '{print $1}') -curl -sL -o /usr/share/keyrings/mattermost-archive-keyring.gpg https://deb.packages.mattermost.com/pubkey.gpg -sh -c 'curl -sL https://deb.packages.mattermost.com/repo-setup.sh | sudo bash -s mattermost' >/dev/null +curl -fsSLL -o /usr/share/keyrings/mattermost-archive-keyring.gpg https://deb.packages.mattermost.com/pubkey.gpg +sh -c 'curl -fsSLL https://deb.packages.mattermost.com/repo-setup.sh | sudo bash -s mattermost' >/dev/null $STD apt-get update $STD apt-get install -y mattermost $STD install -C -m 600 -o mattermost -g mattermost /opt/mattermost/config/config.defaults.json /opt/mattermost/config/config.json diff --git a/install/mediamtx-install.sh b/install/mediamtx-install.sh index 1e951579e..3e424ee81 100644 --- a/install/mediamtx-install.sh +++ b/install/mediamtx-install.sh @@ -18,10 +18,10 @@ $STD apt-get install -y ffmpeg msg_ok "Installed Dependencies" msg_info "Installing MediaMTX" -RELEASE=$(curl -s https://api.github.com/repos/bluenviron/mediamtx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/bluenviron/mediamtx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') mkdir -p /opt/mediamtx cd /opt/mediamtx -wget -q https://github.com/bluenviron/mediamtx/releases/download/${RELEASE}/mediamtx_${RELEASE}_linux_amd64.tar.gz +curl -fsSL "https://github.com/bluenviron/mediamtx/releases/download/${RELEASE}/mediamtx_${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/bluenviron/mediamtx/releases/download/${RELEASE}/mediamtx_${RELEASE}_linux_amd64.tar.gz") tar xzf mediamtx_${RELEASE}_linux_amd64.tar.gz rm -rf mediamtx_${RELEASE}_linux_amd64.tar.gz msg_ok "Installed MediaMTX" diff --git a/install/memos-install.sh b/install/memos-install.sh index 0fe256a97..5b0b018e2 100644 --- a/install/memos-install.sh +++ b/install/memos-install.sh @@ -39,8 +39,8 @@ msg_ok "Installed pnpm" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -87,4 +87,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/minio-install.sh b/install/minio-install.sh index e6e57c95d..27415b5ea 100644 --- a/install/minio-install.sh +++ b/install/minio-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Setup MinIO" -RELEASE=$(curl -s https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}') -wget -q https://dl.min.io/server/minio/release/linux-amd64/minio +RELEASE=$(curl -fsSL https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}') +curl -fsSL "https://dl.min.io/server/minio/release/linux-amd64/minio" -O $(basename "https://dl.min.io/server/minio/release/linux-amd64/minio") mv minio /usr/local/bin/ chmod +x /usr/local/bin/minio useradd -r minio-user -s /sbin/nologin diff --git a/install/mongodb-install.sh b/install/mongodb-install.sh index 478d54835..3bb8fc704 100644 --- a/install/mongodb-install.sh +++ b/install/mongodb-install.sh @@ -25,7 +25,7 @@ else fi msg_info "Installing MongoDB $MONGODB_VERSION" -wget -qO- https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg +curl -fsSL "https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg echo "deb [signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg] http://repo.mongodb.org/apt/debian $(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)/mongodb-org/${MONGODB_VERSION} main" >/etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list $STD apt-get update $STD apt-get install -y mongodb-org diff --git a/install/monica-install.sh b/install/monica-install.sh index 8b2232169..cc8c0740e 100644 --- a/install/monica-install.sh +++ b/install/monica-install.sh @@ -48,9 +48,9 @@ $STD npm install -g yarn msg_ok "Installed Node.js/Yarn" msg_info "Installing monica" -RELEASE=$(curl -s https://api.github.com/repos/monicahq/monica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/monicahq/monica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2" +curl -fsSL "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2" -O $(basename "https://github.com/monicahq/monica/releases/download/v${RELEASE}/monica-v${RELEASE}.tar.bz2") tar -xjf "monica-v${RELEASE}.tar.bz2" mv "/opt/monica-v${RELEASE}" /opt/monica cd /opt/monica diff --git a/install/motioneye-install.sh b/install/motioneye-install.sh index d6242bc2a..47b6f8ff7 100644 --- a/install/motioneye-install.sh +++ b/install/motioneye-install.sh @@ -42,12 +42,12 @@ $STD pip install git+https://github.com/motioneye-project/motioneye.git@dev mkdir -p /etc/motioneye chown -R root:root /etc/motioneye chmod -R 777 /etc/motioneye -wget -qO /etc/motioneye/motioneye.conf https://raw.githubusercontent.com/motioneye-project/motioneye/dev/motioneye/extra/motioneye.conf.sample +curl -fsSL "https://raw.githubusercontent.com/motioneye-project/motioneye/dev/motioneye/extra/motioneye.conf.sample" -o "/etc/motioneye/motioneye.conf" mkdir -p /var/lib/motioneye msg_ok "Installed MotionEye" msg_info "Creating Service" -wget -qO /etc/systemd/system/motioneye.service https://raw.githubusercontent.com/motioneye-project/motioneye/dev/motioneye/extra/motioneye.systemd +curl -fsSL "https://raw.githubusercontent.com/motioneye-project/motioneye/dev/motioneye/extra/motioneye.systemd" -o "/etc/systemd/system/motioneye.service" systemctl enable -q --now motioneye msg_ok "Created Service" diff --git a/install/mylar3-install.sh b/install/mylar3-install.sh index 14cc2ef20..e5477752b 100644 --- a/install/mylar3-install.sh +++ b/install/mylar3-install.sh @@ -30,8 +30,8 @@ msg_ok "Setup Python3" msg_info "Installing ${APPLICATION}" mkdir -p /opt/mylar3 mkdir -p /opt/mylar3-data -RELEASE=$(curl -s https://api.github.com/repos/mylar3/mylar3/releases/latest | jq -r '.tag_name') -wget -qO- https://github.com/mylar3/mylar3/archive/refs/tags/${RELEASE}.tar.gz | tar -xz --strip-components=1 -C /opt/mylar3 +RELEASE=$(curl -fsSL https://api.github.com/repos/mylar3/mylar3/releases/latest | jq -r '.tag_name') +curl -fsSL "https://github.com/mylar3/mylar3/archive/refs/tags/${RELEASE}.tar.gz" | tar -xz --strip-components=1 -C /opt/mylar3 $STD pip install --no-cache-dir -r /opt/mylar3/requirements.txt echo "${RELEASE}" >/opt/${APPLICATION}_version.txt msg_ok "Installed ${APPLICATION}" diff --git a/install/myspeed-install.sh b/install/myspeed-install.sh index da14494ca..05220e30a 100644 --- a/install/myspeed-install.sh +++ b/install/myspeed-install.sh @@ -35,9 +35,9 @@ $STD apt-get install -y nodejs msg_ok "Installed Node.js" msg_info "Installing MySpeed" -RELEASE=$(wget -q https://github.com/gnmyt/myspeed/releases/latest -O - | grep "title>Release" | cut -d " " -f 5) +RELEASE=$(curl -fsSL https://github.com/gnmyt/myspeed/releases/latest | grep "title>Release" | cut -d " " -f 5) cd /opt -wget -q https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip +curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -O $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip") unzip -q MySpeed-$RELEASE.zip -d myspeed cd myspeed $STD npm install diff --git a/install/mysql-install.sh b/install/mysql-install.sh index c6899ae43..26edbbc40 100644 --- a/install/mysql-install.sh +++ b/install/mysql-install.sh @@ -63,7 +63,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then php-json \ php-curl - wget -q "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz" + curl -fsSL "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz" -O $(basename "https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz") mkdir -p /var/www/html/phpMyAdmin tar xf phpMyAdmin-5.2.1-all-languages.tar.gz --strip-components=1 -C /var/www/html/phpMyAdmin cp /var/www/html/phpMyAdmin/config.sample.inc.php /var/www/html/phpMyAdmin/config.inc.php diff --git a/install/navidrome-install.sh b/install/navidrome-install.sh index 721ccd6dd..cbd55a6b5 100644 --- a/install/navidrome-install.sh +++ b/install/navidrome-install.sh @@ -18,10 +18,10 @@ $STD apt-get install -y ffmpeg msg_ok "Installed Dependencies" msg_info "Installing Navidrome" -RELEASE=$(curl -s https://api.github.com/repos/navidrome/navidrome/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/navidrome/navidrome/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') install -d -o root -g root /opt/navidrome install -d -o root -g root /var/lib/navidrome -wget -q https://github.com/navidrome/navidrome/releases/download/v${RELEASE}/navidrome_${RELEASE}_linux_amd64.tar.gz -O Navidrome.tar.gz +curl -fsSL "https://github.com/navidrome/navidrome/releases/download/v${RELEASE}/navidrome_${RELEASE}_linux_amd64.tar.gz" -o "Navidrome.tar.gz" $STD tar -xvzf Navidrome.tar.gz -C /opt/navidrome/ chown -R root:root /opt/navidrome chmod +x /opt/navidrome/navidrome diff --git a/install/neo4j-install.sh b/install/neo4j-install.sh index fdc0c1c17..acbe5ec16 100644 --- a/install/neo4j-install.sh +++ b/install/neo4j-install.sh @@ -19,7 +19,7 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing Neo4j (patience)" -wget -qO- https://debian.neo4j.com/neotechnology.gpg.key | gpg --dearmor -o /etc/apt/keyrings/neotechnology.gpg +curl -fsSL "https://debian.neo4j.com/neotechnology.gpg.key" | gpg --dearmor -o /etc/apt/keyrings/neotechnology.gpg echo 'deb [signed-by=/etc/apt/keyrings/neotechnology.gpg] https://debian.neo4j.com stable latest' >/etc/apt/sources.list.d/neo4j.list $STD apt-get update $STD apt-get install -y neo4j diff --git a/install/netbox-install.sh b/install/netbox-install.sh index 40773acd7..f9d193d7d 100644 --- a/install/netbox-install.sh +++ b/install/netbox-install.sh @@ -47,8 +47,8 @@ msg_ok "Set up PostgreSQL" msg_info "Installing NetBox (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/netbox-community/netbox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/netbox-community/netbox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv /opt/netbox-${RELEASE}/ /opt/netbox diff --git a/install/nextpvr-install.sh b/install/nextpvr-install.sh index 4a4647d0e..f483521ce 100644 --- a/install/nextpvr-install.sh +++ b/install/nextpvr-install.sh @@ -29,7 +29,7 @@ msg_ok "Installed Dependencies" msg_info "Setup NextPVR (Patience)" cd /opt -wget -q https://nextpvr.com/nextpvr-helper.deb +curl -fsSL "https://nextpvr.com/nextpvr-helper.deb" -O $(basename "https://nextpvr.com/nextpvr-helper.deb") $STD dpkg -i nextpvr-helper.deb msg_ok "Installed NextPVR" diff --git a/install/nginxproxymanager-install.sh b/install/nginxproxymanager-install.sh index 8627bf159..af3414b49 100644 --- a/install/nginxproxymanager-install.sh +++ b/install/nginxproxymanager-install.sh @@ -44,7 +44,7 @@ msg_ok "Installed Python Dependencies" VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)" msg_info "Installing Openresty" -wget -qO - https://openresty.org/package/pubkey.gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg +curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg echo -e "deb http://openresty.org/package/debian bullseye openresty" >/etc/apt/sources.list.d/openresty.list $STD apt-get update $STD apt-get -y install openresty @@ -61,19 +61,19 @@ msg_info "Installing pnpm" $STD npm install -g pnpm@8.15 msg_ok "Installed pnpm" -RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | +RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') read -r -p "Would you like to install an older version (v2.10.4)? " prompt if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then msg_info "Downloading Nginx Proxy Manager v2.10.4" - wget -q https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v2.10.4 -O - | tar -xz + curl -fsSL "https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v2.10.4" -o "- | tar -xz" cd ./nginx-proxy-manager-2.10.4 msg_ok "Downloaded Nginx Proxy Manager v2.10.4" else msg_info "Downloading Nginx Proxy Manager v${RELEASE}" - wget -q https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE} -O - | tar -xz + curl -fsSL "https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE}" -o "- | tar -xz" cd ./nginx-proxy-manager-${RELEASE} msg_ok "Downloaded Nginx Proxy Manager v${RELEASE}" fi diff --git a/install/nocodb-install.sh b/install/nocodb-install.sh index 2ee8866b2..a16e05a09 100644 --- a/install/nocodb-install.sh +++ b/install/nocodb-install.sh @@ -16,7 +16,7 @@ update_os msg_info "Installing NocoDB" mkdir -p /opt/nocodb cd /opt/nocodb -curl -s http://get.nocodb.com/linux-x64 -o nocodb -L +curl -fsSL http://get.nocodb.com/linux-x64 -o nocodb -L chmod +x nocodb msg_ok "Installed NocoDB" diff --git a/install/nodebb-install.sh b/install/nodebb-install.sh index 3318ede46..5d8aac035 100644 --- a/install/nodebb-install.sh +++ b/install/nodebb-install.sh @@ -86,8 +86,8 @@ msg_ok "MongoDB successfully configurated" msg_info "Install NodeBB" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/NodeBB/NodeBB/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/NodeBB/NodeBB/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/NodeBB/NodeBB/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv NodeBB-${RELEASE} /opt/nodebb cd /opt/nodebb diff --git a/install/notifiarr-install.sh b/install/notifiarr-install.sh index e17f66cbb..f65c60bf7 100644 --- a/install/notifiarr-install.sh +++ b/install/notifiarr-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Notifiarr" $STD groupadd notifiarr $STD useradd -g notifiarr notifiarr -wget -qO- https://packagecloud.io/golift/pkgs/gpgkey | gpg --dearmor >/usr/share/keyrings/golift-archive-keyring.gpg +curl -fsSL "https://packagecloud.io/golift/pkgs/gpgkey" | gpg --dearmor >/usr/share/keyrings/golift-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/golift-archive-keyring.gpg] https://packagecloud.io/golift/pkgs/ubuntu focal main" >/etc/apt/sources.list.d/golift.list $STD apt-get update $STD apt-get install -y notifiarr diff --git a/install/npmplus-install.sh b/install/npmplus-install.sh index 66cdc9f8f..ca15c0462 100644 --- a/install/npmplus-install.sh +++ b/install/npmplus-install.sh @@ -26,18 +26,18 @@ $STD rc-service docker start $STD rc-update add docker default get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } DOCKER_COMPOSE_LATEST_VERSION=$(get_latest_release "docker/compose") DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker} mkdir -p $DOCKER_CONFIG/cli-plugins -curl -sSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose +curl -fsSLSL https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_LATEST_VERSION/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose msg_ok "Installed Docker & Compose" msg_info "Fetching NPMplus" cd /opt -wget -q https://raw.githubusercontent.com/ZoeyVid/NPMplus/refs/heads/develop/compose.yaml +curl -fsSL "https://raw.githubusercontent.com/ZoeyVid/NPMplus/refs/heads/develop/compose.yaml" -O $(basename "https://raw.githubusercontent.com/ZoeyVid/NPMplus/refs/heads/develop/compose.yaml") msg_ok "Fetched NPMplus" attempts=0 diff --git a/install/nxwitness-install.sh b/install/nxwitness-install.sh index c5728d430..7e1fafd97 100644 --- a/install/nxwitness-install.sh +++ b/install/nxwitness-install.sh @@ -27,10 +27,10 @@ msg_ok "Installed Dependencies" msg_info "Setup Nx Witness" cd /tmp BASE_URL="https://updates.networkoptix.com/default/index.html" -RELEASE=$(curl -s "$BASE_URL" | grep -oP '(?<=)[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?=)' | head -n 1) -DETAIL_PAGE=$(curl -s "$BASE_URL#note_$RELEASE") +RELEASE=$(curl -fsSL "$BASE_URL" | grep -oP '(?<=)[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?=)' | head -n 1) +DETAIL_PAGE=$(curl -fsSL "$BASE_URL#note_$RELEASE") DOWNLOAD_URL=$(echo "$DETAIL_PAGE" | grep -oP "https://updates.networkoptix.com/default/$RELEASE/linux/nxwitness-server-[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-linux_x64\.deb" | head -n 1) -wget -q "$DOWNLOAD_URL" -O "nxwitness-server-$RELEASE-linux_x64.deb" +curl -fsSL "$DOWNLOAD_URL" -o ""nxwitness-server-$RELEASE-linux_x64.deb"" export DEBIAN_FRONTEND=noninteractive $STD dpkg -i nxwitness-server-$RELEASE-linux_x64.deb echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/ollama-install.sh b/install/ollama-install.sh index 296800c49..8cf97f6dd 100644 --- a/install/ollama-install.sh +++ b/install/ollama-install.sh @@ -25,8 +25,8 @@ msg_ok "Installed Dependencies" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -94,4 +94,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/omada-install.sh b/install/omada-install.sh index 78ccf8b9a..b0d9d4644 100644 --- a/install/omada-install.sh +++ b/install/omada-install.sh @@ -30,8 +30,8 @@ else fi msg_info "Installing Azul Zulu Java" -wget -qO /etc/apt/trusted.gpg.d/zulu-repo.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -wget -q https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb +curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -o "/etc/apt/trusted.gpg.d/zulu-repo.asc" +curl -fsSL "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb" -O $(basename "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb") $STD dpkg -i zulu-repo_1.0.0-3_all.deb $STD apt-get update $STD apt-get -y install zulu21-jre-headless @@ -39,7 +39,7 @@ msg_ok "Installed Azul Zulu Java" msg_info "Installing libssl (if needed)" if ! dpkg -l | grep -q 'libssl1.1'; then - wget -qO /tmp/libssl.deb "https://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1w-0+deb11u2_amd64.deb" + curl -fsSL "https://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1w-0+deb11u2_amd64.deb" -o "/tmp/libssl.deb" $STD dpkg -i /tmp/libssl.deb rm -f /tmp/libssl.deb msg_ok "Installed libssl1.1" @@ -48,17 +48,17 @@ else fi msg_info "Installing MongoDB $MONGODB_VERSION" -wget -qO- https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg +curl -fsSL "https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg echo "deb [signed-by=/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg] http://repo.mongodb.org/apt/debian $(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)/mongodb-org/${MONGODB_VERSION} main" >/etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.list $STD apt-get update $STD apt-get install -y mongodb-org msg_ok "Installed MongoDB $MONGODB_VERSION" msg_info "Installing Omada Controller" -latest_url=$(curl -s "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1) +latest_url=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1) latest_version=$(basename "$latest_url") -wget -qL ${latest_url} +curl -fsSL "${latest_url}" -O $STD dpkg -i ${latest_version} msg_ok "Installed Omada Controller" diff --git a/install/ombi-install.sh b/install/ombi-install.sh index fe1ca3378..1c466bfc3 100644 --- a/install/ombi-install.sh +++ b/install/ombi-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Ombi" -RELEASE=$(curl -sL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) -wget -q https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz +RELEASE=$(curl -fsSLL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +curl -fsSL "https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz" -O $(basename "https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz") echo "${RELEASE}" >/opt/${APPLICATION}_version.txt mkdir -p /opt/ombi tar -xzf linux-x64.tar.gz -C /opt/ombi diff --git a/install/omv-install.sh b/install/omv-install.sh index 7313b3b3e..d608fc7ac 100644 --- a/install/omv-install.sh +++ b/install/omv-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing OpenMediaVault (Patience)" -wget -qO- https://packages.openmediavault.org/public/archive.key | gpg --dearmor >"/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.gpg" +curl -fsSL "https://packages.openmediavault.org/public/archive.key" | gpg --dearmor >"/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.gpg" cat </etc/apt/sources.list.d/openmediavault.list deb [signed-by=/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.gpg] http://packages.openmediavault.org/public sandworm main EOF diff --git a/install/onedev-install.sh b/install/onedev-install.sh index 4c92d01f2..4e7cfef5e 100644 --- a/install/onedev-install.sh +++ b/install/onedev-install.sh @@ -22,7 +22,7 @@ msg_ok "Installed Dependencies" msg_info "Installing OneDev" cd /opt -wget -q https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz +curl -fsSL "https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz" -O $(basename "https://code.onedev.io/onedev/server/~site/onedev-latest.tar.gz") tar -xzf onedev-latest.tar.gz mv /opt/onedev-latest /opt/onedev $STD /opt/onedev/bin/server.sh install diff --git a/install/opengist-install.sh b/install/opengist-install.sh index ce0423778..818b201e4 100644 --- a/install/opengist-install.sh +++ b/install/opengist-install.sh @@ -18,9 +18,9 @@ $STD apt-get install -y git msg_ok "Installed Dependencies" msg_info "Install Opengist" -RELEASE=$(curl -s https://api.github.com/repos/thomiceli/opengist/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/thomiceli/opengist/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" -wget -q "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz" +curl -fsSL "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz" -O $(basename "https://github.com/thomiceli/opengist/releases/download/v${RELEASE}/opengist${RELEASE}-linux-amd64.tar.gz") $STD tar -xzf opengist${RELEASE}-linux-amd64.tar.gz mv opengist /opt/opengist chmod +x /opt/opengist/opengist diff --git a/install/openhab-install.sh b/install/openhab-install.sh index 6a7919a9c..a86b97c68 100644 --- a/install/openhab-install.sh +++ b/install/openhab-install.sh @@ -19,8 +19,8 @@ $STD apt-get install -y apt-transport-https msg_ok "Installed Dependencies" msg_info "Installing Azul Zulu21" -wget -qO /etc/apt/trusted.gpg.d/zulu-repo.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -wget -q https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb +curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -o "/etc/apt/trusted.gpg.d/zulu-repo.asc" +curl -fsSL "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb" -O $(basename "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb") $STD dpkg -i zulu-repo_1.0.0-3_all.deb $STD apt-get update $STD apt-get -y install zulu21-jdk diff --git a/install/openobserve-install.sh b/install/openobserve-install.sh index 2b3634813..838afb14a 100644 --- a/install/openobserve-install.sh +++ b/install/openobserve-install.sh @@ -15,7 +15,7 @@ update_os msg_info "Installing OpenObserve" mkdir -p /opt/openobserve/data -LATEST=$(curl -sL https://api.github.com/repos/openobserve/openobserve/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +LATEST=$(curl -fsSLL https://api.github.com/repos/openobserve/openobserve/releases/latest | grep '"tag_name":' | cut -d'"' -f4) $STD tar zxvf <(curl -fsSL https://github.com/openobserve/openobserve/releases/download/$LATEST/openobserve-${LATEST}-linux-amd64.tar.gz) -C /opt/openobserve cat </opt/openobserve/data/.env diff --git a/install/outline-install.sh b/install/outline-install.sh index 5ac07bcc5..236b7b14e 100644 --- a/install/outline-install.sh +++ b/install/outline-install.sh @@ -54,8 +54,8 @@ msg_ok "Set up PostgreSQL" msg_info "Setup Outline (Patience)" temp_file=$(mktemp) LOCAL_IP="$(hostname -I | awk '{print $1}')" -RELEASE=$(curl -s https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv outline-${RELEASE} /opt/outline cd /opt/outline diff --git a/install/owncast-install.sh b/install/owncast-install.sh index 76bb010ec..0a9558953 100644 --- a/install/owncast-install.sh +++ b/install/owncast-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Owncast" mkdir /opt/owncast cd /opt/owncast -wget -q $(curl -s https://api.github.com/repos/owncast/owncast/releases/latest | grep download | grep linux-64bit | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/owncast/owncast/releases/latest | grep download | grep linux-64bit | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/owncast/owncast/releases/latest | grep download | grep linux-64bit | cut -d\" -f4)") $STD unzip owncast*.zip rm owncast*.zip msg_ok "Installed Owncast" diff --git a/install/paperless-ai-install.sh b/install/paperless-ai-install.sh index c9513997e..2313c312d 100644 --- a/install/paperless-ai-install.sh +++ b/install/paperless-ai-install.sh @@ -35,8 +35,8 @@ msg_ok "Installed Node.js" msg_info "Setup Paperless-AI" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv paperless-ai-${RELEASE} /opt/paperless-ai cd /opt/paperless-ai diff --git a/install/paperless-gpt-install.sh b/install/paperless-gpt-install.sh index f8ed8b0f3..892f93c13 100644 --- a/install/paperless-gpt-install.sh +++ b/install/paperless-gpt-install.sh @@ -38,8 +38,8 @@ msg_ok "Installed Node.js" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -48,8 +48,8 @@ msg_ok "Installed Golang" msg_info "Setup Paperless-GPT" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv paperless-gpt-${RELEASE} /opt/paperless-gpt cd /opt/paperless-gpt/web-app @@ -130,4 +130,4 @@ msg_info "Cleaning up" rm -f $temp_file $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/paperless-ngx-install.sh b/install/paperless-ngx-install.sh index bb96469ce..1a2bfd6e1 100644 --- a/install/paperless-ngx-install.sh +++ b/install/paperless-ngx-install.sh @@ -59,7 +59,7 @@ $STD apt-get install -y \ tesseract-ocr-eng cd /tmp -wget -q https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz +curl -fsSL "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz" -O $(basename "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz") $STD tar -xzf ghostscript-10.04.0.tar.gz cd ghostscript-10.04.0 $STD ./configure @@ -78,16 +78,16 @@ rm -rf /opt/jbig2enc msg_ok "Installed JBIG2" msg_info "Installing Paperless-ngx (Patience)" -Paperlessngx=$(wget -q https://github.com/paperless-ngx/paperless-ngx/releases/latest -O - | grep "title>Release" | cut -d " " -f 5) +Paperlessngx=$(curl -fsSL https://github.com/paperless-ngx/paperless-ngx/releases/latest | grep "title>Release" | cut -d " " -f 5) cd /opt -$STD wget https://github.com/paperless-ngx/paperless-ngx/releases/download/$Paperlessngx/paperless-ngx-$Paperlessngx.tar.xz +$STD curl -fsSL "https://github.com/paperless-ngx/paperless-ngx/releases/download/$Paperlessngx/paperless-ngx-$Paperlessngx.tar.xz" -O $STD tar -xf paperless-ngx-$Paperlessngx.tar.xz -C /opt/ mv paperless-ngx paperless rm paperless-ngx-$Paperlessngx.tar.xz cd /opt/paperless $STD pip install --upgrade pip $STD pip install -r requirements.txt -curl -s -o /opt/paperless/paperless.conf https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/paperless.conf.example +curl -fsSL -o /opt/paperless/paperless.conf https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/paperless.conf.example mkdir -p {consume,data,media,static} sed -i -e 's|#PAPERLESS_REDIS=redis://localhost:6379|PAPERLESS_REDIS=redis://localhost:6379|' /opt/paperless/paperless.conf sed -i -e "s|#PAPERLESS_CONSUMPTION_DIR=../consume|PAPERLESS_CONSUMPTION_DIR=/opt/paperless/consume|" /opt/paperless/paperless.conf diff --git a/install/part-db-install.sh b/install/part-db-install.sh index 65059d9c9..6df95697e 100644 --- a/install/part-db-install.sh +++ b/install/part-db-install.sh @@ -57,8 +57,8 @@ msg_ok "Installed Node.js/Yarn" msg_info "Installing Part-DB (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/Part-DB/Part-DB-server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/Part-DB/Part-DB-server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip") unzip -q "v${RELEASE}.zip" mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb diff --git a/install/paymenter-install.sh b/install/paymenter-install.sh index 53c6d5a52..4649385eb 100644 --- a/install/paymenter-install.sh +++ b/install/paymenter-install.sh @@ -25,15 +25,15 @@ $STD apt-get install -y \ mariadb-server \ nginx \ redis-server -$STD curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer +$STD curl -fsSLS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer msg_ok "Installed Dependencies" msg_info "Installing Paymenter" -RELEASE=$(curl -s https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') +RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/') echo "${RELEASE}" >/opt/${APPLICATION}_version.txt mkdir -p /opt/paymenter cd /opt/paymenter -wget -q "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz" +curl -fsSL "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz" -O $(basename "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz") $STD tar -xzvf paymenter.tar.gz chmod -R 755 storage/* bootstrap/cache/ msg_ok "Installed Paymenter" diff --git a/install/peanut-install.sh b/install/peanut-install.sh index c77fdaa57..9601b1196 100644 --- a/install/peanut-install.sh +++ b/install/peanut-install.sh @@ -31,8 +31,8 @@ $STD apt-get install -y nut-client msg_ok "Installed NUT" msg_info "Installing Peanut" -RELEASE=$(curl -sL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) -wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE} +RELEASE=$(curl -fsSLL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +curl -fsSL "https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE}" -o "peanut.tar.gz" mkdir -p /opt/peanut tar -xzf peanut.tar.gz -C /opt/peanut --strip-components 1 rm peanut.tar.gz diff --git a/install/pelican-panel-install.sh b/install/pelican-panel-install.sh index 604683bf3..73b026d48 100644 --- a/install/pelican-panel-install.sh +++ b/install/pelican-panel-install.sh @@ -23,7 +23,7 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Adding PHP8.3 Repository" -$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb +$STD curl -fsSLSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb $STD dpkg -i /tmp/debsuryorg-archive-keyring.deb $STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' $STD apt-get update @@ -53,10 +53,10 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH msg_ok "Set up MariaDB" msg_info "Installing Pelican Panel" -RELEASE=$(curl -s https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir /opt/pelican-panel cd /opt/pelican-panel -wget -q "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" +curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -O $(basename "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz") tar -xzf "panel.tar.gz" $STD composer install --no-dev --optimize-autoloader --no-interaction $STD php artisan p:environment:setup diff --git a/install/pelican-wings-install.sh b/install/pelican-wings-install.sh index 35dfc124a..a3be87407 100644 --- a/install/pelican-wings-install.sh +++ b/install/pelican-wings-install.sh @@ -17,13 +17,13 @@ msg_info "Installing Docker" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json -$STD sh <(curl -sSL https://get.docker.com) +$STD sh <(curl -fsSLSL https://get.docker.com) systemctl enable -q --now docker msg_ok "Installed Docker" msg_info "Installing Pelican Wings" -RELEASE=$(curl -s https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q -O /usr/local/bin/wings "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" +RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings" chmod u+x /usr/local/bin/wings mkdir -p /etc/pelican /var/run/wings echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/petio-install.sh b/install/petio-install.sh index 442fad5e4..faaaadc49 100644 --- a/install/petio-install.sh +++ b/install/petio-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y gnupg msg_ok "Installed Dependencies" msg_info "Installing MongoDB 4.4" -wget -qO- https://www.mongodb.org/static/pgp/server-4.4.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-4.4.gpg +curl -fsSL "https://www.mongodb.org/static/pgp/server-4.4.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-4.4.gpg # Determine OS ID OS_ID=$(grep '^ID=' /etc/os-release | cut -d'=' -f2) @@ -37,7 +37,7 @@ msg_ok "MongoDB 4.4 Installed" msg_info "Installing Petio" useradd -M --shell=/bin/false petio mkdir /opt/Petio -wget -q https://petio.tv/releases/latest -O petio-latest.zip +curl -fsSL "https://petio.tv/releases/latest" -o "petio-latest.zip" $STD unzip -q petio-latest.zip -d /opt/Petio rm -rf petio-latest.zip chown -R petio:petio /opt/Petio diff --git a/install/pf2etools-install.sh b/install/pf2etools-install.sh index f6d0f7f1e..12c0b1cb3 100644 --- a/install/pf2etools-install.sh +++ b/install/pf2etools-install.sh @@ -34,8 +34,8 @@ msg_ok "Installed Node.js" msg_info "Setup Pf2eTools" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/Pf2eToolsOrg/Pf2eTools/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/Pf2eToolsOrg/Pf2eTools/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip") unzip -q "${RELEASE}.zip" mv "Pf2eTools-${RELEASE:1}" /opt/Pf2eTools cd /opt/Pf2eTools diff --git a/install/photoprism-install.sh b/install/photoprism-install.sh index 75867330f..a02ac0cb3 100644 --- a/install/photoprism-install.sh +++ b/install/photoprism-install.sh @@ -35,9 +35,9 @@ msg_info "Installing PhotoPrism (Patience)" mkdir -p /opt/photoprism/{cache,config,photos,storage,temp} mkdir -p /opt/photoprism/photos/{originals,import} mkdir -p /opt/photoprism_backups -wget -q -cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xz -C /opt/photoprism --strip-components=1 -LIBHEIF_URL=$(wget -q -O - "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1) -wget -q -cO - "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" | tar -xzf - -C /usr/local --strip-components=1 +curl -fsSL "-cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xz -C /opt/photoprism --strip-components=1" -O $(basename "-cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xz -C /opt/photoprism --strip-components=1") +LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1) +curl -fsSL "-cO - "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" | tar -xzf - -C /usr/local --strip-components=1" -O $(basename "-cO - "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" | tar -xzf - -C /usr/local --strip-components=1") ldconfig chmod -R 755 /opt/photoprism/photos/originals cat </opt/photoprism/config/.env diff --git a/install/phpipam-install.sh b/install/phpipam-install.sh index 60e9e0856..c9e56d74a 100644 --- a/install/phpipam-install.sh +++ b/install/phpipam-install.sh @@ -38,9 +38,9 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH msg_ok "Set up MariaDB" msg_info "Installing phpIPAM" -RELEASE=$(curl -s https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" +curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -O $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip") unzip -q "phpipam-v${RELEASE}.zip" mysql -u root "${DB_NAME}" /dev/null 2>&1 +curl -fsSLL https://github.com/leiweibau/Pi.Alert/raw/main/tar/pialert_latest.tar | tar xvf - -C /opt >/dev/null 2>&1 rm -rf /var/lib/ieee-data /var/www/html/index.html sed -i -e 's#^sudo cp -n /usr/share/ieee-data/.* /var/lib/ieee-data/#\# &#' -e '/^sudo mkdir -p 2_backup$/s/^/# /' -e '/^sudo cp \*.txt 2_backup$/s/^/# /' -e '/^sudo cp \*.csv 2_backup$/s/^/# /' /opt/pialert/back/update_vendors.sh mv /var/www/html/index.lighttpd.html /var/www/html/index.lighttpd.html.old diff --git a/install/pihole-install.sh b/install/pihole-install.sh index 7c65a2e96..3ea462d74 100644 --- a/install/pihole-install.sh +++ b/install/pihole-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://pi-hole.net/ -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -46,7 +46,7 @@ sed -i -E ' /^\s*expandHosts =/ s|=.*|= true| ' /etc/pihole/pihole.toml -cat < /etc/dnsmasq.d/01-pihole.conf +cat </etc/dnsmasq.d/01-pihole.conf server=8.8.8.8 server=8.8.4.4 EOF @@ -131,7 +131,7 @@ forward-zone: #forward-addr: 2620:fe::9@853#dns.quad9.net EOF fi -cat < /etc/dnsmasq.d/01-pihole.conf + cat </etc/dnsmasq.d/01-pihole.conf server=127.0.0.1#5335 server=8.8.8.8 server=8.8.4.4 diff --git a/install/pingvin-install.sh b/install/pingvin-install.sh index f88f25f60..3b9da5729 100644 --- a/install/pingvin-install.sh +++ b/install/pingvin-install.sh @@ -6,7 +6,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://stonith404.github.io/pingvin-share/introduction -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -34,9 +34,9 @@ msg_ok "Installed Node.js" msg_info "Installing Pingvin Share (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/stonith404/pingvin-share/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/stonith404/pingvin-share/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" -wget -q "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" +curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip echo "${RELEASE}" >"/opt/pingvin_version.txt" mv pingvin-share-${RELEASE} /opt/pingvin-share @@ -50,7 +50,7 @@ $STD npm install $STD npm run build $STD pm2 start --name="pingvin-share-frontend" npm -- run start # create and enable pm2-root systemd script -$STD pm2 startup systemd +$STD pm2 startup systemd # save running pm2 processes so pingvin-share can survive reboots $STD pm2 save msg_ok "Installed Pingvin Share" diff --git a/install/plant-it-install.sh b/install/plant-it-install.sh index 8b6de905c..3bc3edf3a 100644 --- a/install/plant-it-install.sh +++ b/install/plant-it-install.sh @@ -23,7 +23,7 @@ msg_ok "Installed Dependencies" msg_info "Setting up Adoptium Repository" mkdir -p /etc/apt/keyrings -wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" >/etc/apt/sources.list.d/adoptium.list $STD apt-get update msg_ok "Set up Adoptium Repository" @@ -49,8 +49,8 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH msg_ok "Set up MariaDB" msg_info "Setup Plant-it" -RELEASE=$(curl -s https://api.github.com/repos/MDeLuise/plant-it/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/server.jar +RELEASE=$(curl -fsSL https://api.github.com/repos/MDeLuise/plant-it/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/server.jar" -O $(basename "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/server.jar") mkdir -p /opt/plant-it/{backend,frontend} mkdir -p /opt/plant-it-data mv -f server.jar /opt/plant-it/backend/server.jar @@ -80,7 +80,7 @@ CACHE_PORT=6379 EOF cd /opt/plant-it/frontend -wget -q https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz +curl -fsSL "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz" -O $(basename "https://github.com/MDeLuise/plant-it/releases/download/${RELEASE}/client.tar.gz") tar -xzf client.tar.gz echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" msg_ok "Setup Plant-it" diff --git a/install/plex-install.sh b/install/plex-install.sh index 22c0c738f..f0b8809ff 100644 --- a/install/plex-install.sh +++ b/install/plex-install.sh @@ -29,7 +29,7 @@ fi msg_ok "Set Up Hardware Acceleration" msg_info "Setting Up Plex Media Server Repository" -wget -qO- https://downloads.plex.tv/plex-keys/PlexSign.key >/usr/share/keyrings/PlexSign.asc +curl -fsSL https://downloads.plex.tv/plex-keys/PlexSign.key | tee /usr/share/keyrings/PlexSign.asc >/dev/null echo "deb [signed-by=/usr/share/keyrings/PlexSign.asc] https://downloads.plex.tv/repo/deb/ public main" >/etc/apt/sources.list.d/plexmediaserver.list msg_ok "Set Up Plex Media Server Repository" diff --git a/install/pocketbase-install.sh b/install/pocketbase-install.sh index 226baaa9c..f35bcf5e7 100644 --- a/install/pocketbase-install.sh +++ b/install/pocketbase-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Pocketbase" -RELEASE="$(curl -s https://api.github.com/repos/pocketbase/pocketbase/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')" -wget -q "https://github.com/pocketbase/pocketbase/releases/download/v${RELEASE}/pocketbase_${RELEASE}_linux_amd64.zip" -O /tmp/pocketbase.zip +RELEASE="$(curl -fsSL https://api.github.com/repos/pocketbase/pocketbase/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')" +curl -fsSL "https://github.com/pocketbase/pocketbase/releases/download/v${RELEASE}/pocketbase_${RELEASE}_linux_amd64.zip" -o "/tmp/pocketbase.zip" mkdir -p /opt/pocketbase/{pb_public,pb_migrations,pb_hooks} unzip -q -o /tmp/pocketbase.zip -d /opt/pocketbase diff --git a/install/pocketid-install.sh b/install/pocketid-install.sh index df2534e73..0d75ccc72 100644 --- a/install/pocketid-install.sh +++ b/install/pocketid-install.sh @@ -34,8 +34,8 @@ msg_ok "Installed Node.js" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -45,8 +45,8 @@ msg_ok "Installed Golang" read -r -p "What public URL do you want to use (e.g. pocketid.mydomain.com)? " public_url msg_info "Setup Pocket ID" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/pocket-id/pocket-id/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/pocket-id/pocket-id/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv pocket-id-${RELEASE}/ /opt/pocket-id @@ -125,4 +125,4 @@ $STD apt-get -y autoclean msg_ok "Cleaned" motd_ssh -customize +customize \ No newline at end of file diff --git a/install/podman-homeassistant-install.sh b/install/podman-homeassistant-install.sh index 90cb766e8..75a0eabe1 100644 --- a/install/podman-homeassistant-install.sh +++ b/install/podman-homeassistant-install.sh @@ -14,7 +14,7 @@ network_check update_os get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } PORTAINER_LATEST_VERSION=$(get_latest_release "portainer/portainer") diff --git a/install/podman-install.sh b/install/podman-install.sh index 1f7d5e846..b3c89d1c0 100644 --- a/install/podman-install.sh +++ b/install/podman-install.sh @@ -14,7 +14,7 @@ network_check update_os get_latest_release() { - curl -sL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 + curl -fsSLL https://api.github.com/repos/$1/releases/latest | grep '"tag_name":' | cut -d'"' -f4 } PORTAINER_LATEST_VERSION=$(get_latest_release "portainer/portainer") diff --git a/install/postgresql-install.sh b/install/postgresql-install.sh index d2eb9d317..c02a18dc0 100644 --- a/install/postgresql-install.sh +++ b/install/postgresql-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Setting up PostgreSQL Repository" VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)" echo "deb http://apt.postgresql.org/pub/repos/apt ${VERSION}-pgdg main" >/etc/apt/sources.list.d/pgdg.list -curl -sSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor --output /etc/apt/trusted.gpg.d/postgresql.gpg +curl -fsSLSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor --output /etc/apt/trusted.gpg.d/postgresql.gpg msg_ok "Setup PostgreSQL Repository" msg_info "Installing PostgreSQL" diff --git a/install/privatebin-install.sh b/install/privatebin-install.sh index ddb04c091..67d4b0ce2 100644 --- a/install/privatebin-install.sh +++ b/install/privatebin-install.sh @@ -23,11 +23,11 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Installing PrivateBin" -RELEASE=$(curl -s https://api.github.com/repos/PrivateBin/PrivateBin/releases/latest | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/') +RELEASE=$(curl -fsSL https://api.github.com/repos/PrivateBin/PrivateBin/releases/latest | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/') echo "${RELEASE}" >/opt/${APPLICATION}_version.txt mkdir -p /opt/privatebin cd /opt/privatebin -wget -q "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" +curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip") $STD unzip -q ${RELEASE}.zip mv PrivateBin-${RELEASE}/* . msg_ok "Installed PrivateBin" diff --git a/install/projectsend-install.sh b/install/projectsend-install.sh index c0ff45c36..3c99d3dda 100644 --- a/install/projectsend-install.sh +++ b/install/projectsend-install.sh @@ -37,9 +37,9 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH msg_ok "Set up MariaDB" msg_info "Installing projectsend" -RELEASE=$(curl -s https://api.github.com/repos/projectsend/projectsend/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/projectsend/projectsend/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" +curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -O $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip") mkdir projectsend unzip -q "projectsend-r${RELEASE}.zip" -d projectsend mv /opt/projectsend/includes/sys.config.sample.php /opt/projectsend/includes/sys.config.php diff --git a/install/prometheus-alertmanager-install.sh b/install/prometheus-alertmanager-install.sh index bac01b61d..7f986acb8 100755 --- a/install/prometheus-alertmanager-install.sh +++ b/install/prometheus-alertmanager-install.sh @@ -14,10 +14,10 @@ network_check update_os msg_info "Installing Prometheus Alertmanager" -RELEASE=$(curl -s https://api.github.com/repos/prometheus/alertmanager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/prometheus/alertmanager/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir -p /etc/alertmanager mkdir -p /var/lib/alertmanager -wget -q https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz +curl -fsSL "https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz" -O $(basename "https://github.com/prometheus/alertmanager/releases/download/v${RELEASE}/alertmanager-${RELEASE}.linux-amd64.tar.gz") tar -xf alertmanager-${RELEASE}.linux-amd64.tar.gz mv alertmanager-${RELEASE}.linux-amd64/alertmanager alertmanager-${RELEASE}.linux-amd64/amtool /usr/local/bin/ mv alertmanager-${RELEASE}.linux-amd64/alertmanager.yml /etc/alertmanager/alertmanager.yml diff --git a/install/prometheus-install.sh b/install/prometheus-install.sh index 3febc2021..9c6958941 100644 --- a/install/prometheus-install.sh +++ b/install/prometheus-install.sh @@ -14,10 +14,10 @@ network_check update_os msg_info "Installing Prometheus" -RELEASE=$(curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/prometheus/prometheus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir -p /etc/prometheus mkdir -p /var/lib/prometheus -wget -q https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz +curl -fsSL "https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz" -O $(basename "https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz") tar -xf prometheus-${RELEASE}.linux-amd64.tar.gz mv prometheus-${RELEASE}.linux-amd64/prometheus prometheus-${RELEASE}.linux-amd64/promtool /usr/local/bin/ mv prometheus-${RELEASE}.linux-amd64/prometheus.yml /etc/prometheus/prometheus.yml diff --git a/install/prometheus-paperless-ngx-exporter-install.sh b/install/prometheus-paperless-ngx-exporter-install.sh index a5c6f1163..7ccb8b235 100755 --- a/install/prometheus-paperless-ngx-exporter-install.sh +++ b/install/prometheus-paperless-ngx-exporter-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Prometheus Paperless NGX Exporter" -RELEASE=$(curl -s https://api.github.com/repos/hansmi/prometheus-paperless-exporter/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/hansmi/prometheus-paperless-exporter/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/hansmi/prometheus-paperless-exporter/releases/download/v${RELEASE}/prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz") tar -xf prometheus-paperless-exporter_${RELEASE}_linux_amd64.tar.gz mv prometheus-paperless-exporter_${RELEASE}_linux_amd64/prometheus-paperless-exporter /usr/local/bin/ mkdir -p /etc/prometheus-paperless-ngx-exporter diff --git a/install/prowlarr-install.sh b/install/prowlarr-install.sh index 8a7ed4cb0..8aee8cc3c 100644 --- a/install/prowlarr-install.sh +++ b/install/prowlarr-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Prowlarr" mkdir -p /var/lib/prowlarr/ chmod 775 /var/lib/prowlarr/ -$STD wget --content-disposition 'https://prowlarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' +$STD curl -fJL 'https://prowlarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' $STD tar -xvzf Prowlarr.master.*.tar.gz mv Prowlarr /opt chmod 775 /opt/Prowlarr diff --git a/install/proxmox-backup-server-install.sh b/install/proxmox-backup-server-install.sh index 91bb8b995..2641a1ed9 100644 --- a/install/proxmox-backup-server-install.sh +++ b/install/proxmox-backup-server-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y gpg msg_ok "Installed Dependencies" msg_info "Installing Proxmox Backup Server" -wget -q https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg +curl -fsSL "https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg" -o "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg" cat <>/etc/apt/sources.list deb http://download.proxmox.com/debian/pbs bookworm pbs-no-subscription EOF diff --git a/install/proxmox-mail-gateway-install.sh b/install/proxmox-mail-gateway-install.sh index e16e25f50..bc2708ef2 100644 --- a/install/proxmox-mail-gateway-install.sh +++ b/install/proxmox-mail-gateway-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing Proxmox Mail Gateway" -wget -q https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg +curl -fsSL "https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg" -o "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg" echo "deb http://download.proxmox.com/debian/pmg bookworm pmg-no-subscription" >/etc/apt/sources.list.d/pmg.list $STD apt-get update $STD apt-get -y install proxmox-mailgateway-container diff --git a/install/ps5-mqtt-install.sh b/install/ps5-mqtt-install.sh index 3dd055f98..496f3d9c7 100644 --- a/install/ps5-mqtt-install.sh +++ b/install/ps5-mqtt-install.sh @@ -33,8 +33,8 @@ $STD npm i -g playactor msg_ok "Installed Node.js" msg_info "Installing PS5-MQTT" -RELEASE=$(curl -s https://api.github.com/repos/FunkeyFlo/ps5-mqtt/releases/latest | jq -r '.tag_name') -wget -P /tmp -q https://github.com/FunkeyFlo/ps5-mqtt/archive/refs/tags/${RELEASE}.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/FunkeyFlo/ps5-mqtt/releases/latest | jq -r '.tag_name') +curl -fsSL https://github.com/FunkeyFlo/ps5-mqtt/archive/refs/tags/${RELEASE}.tar.gz -o /tmp/${RELEASE}.tar.gz tar zxf /tmp/${RELEASE}.tar.gz -C /opt mv /opt/ps5-mqtt-* /opt/ps5-mqtt cd /opt/ps5-mqtt/ps5-mqtt/ diff --git a/install/pterodactyl-panel-install.sh b/install/pterodactyl-panel-install.sh index 89e75298f..6cf0103f8 100644 --- a/install/pterodactyl-panel-install.sh +++ b/install/pterodactyl-panel-install.sh @@ -24,7 +24,7 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Adding PHP8.3 Repository" -$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb +$STD curl -fsSLSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb $STD dpkg -i /tmp/debsuryorg-archive-keyring.deb $STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' $STD apt-get update @@ -58,10 +58,10 @@ read -p "Enter your First Name: " NAME_FIRST read -p "Enter your Last Name: " NAME_LAST msg_info "Installing pterodactyl Panel" -RELEASE=$(curl -s https://api.github.com/repos/pterodactyl/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/pterodactyl/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir /opt/pterodactyl-panel cd /opt/pterodactyl-panel -wget -q "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz" +curl -fsSL "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz" -O $(basename "https://github.com/pterodactyl/panel/releases/download/v${RELEASE}/panel.tar.gz") tar -xzf "panel.tar.gz" cp .env.example .env IP=$(hostname -I | awk '{print $1}') diff --git a/install/pterodactyl-wings-install.sh b/install/pterodactyl-wings-install.sh index 9eeceb16f..a289caf98 100644 --- a/install/pterodactyl-wings-install.sh +++ b/install/pterodactyl-wings-install.sh @@ -17,13 +17,13 @@ msg_info "Installing Docker" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json -$STD sh <(curl -sSL https://get.docker.com) +$STD sh <(curl -fsSLSL https://get.docker.com) systemctl enable -q --now docker msg_ok "Installed Docker" msg_info "Installing Pterodactyl Wings" -RELEASE=$(curl -s https://api.github.com/repos/pterodactyl/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q -O /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/download/v${RELEASE}/wings_linux_amd64" +RELEASE=$(curl -fsSL https://api.github.com/repos/pterodactyl/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/pterodactyl/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings" chmod u+x /usr/local/bin/wings mkdir -p /etc/pterodactyl echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/qbittorrent-install.sh b/install/qbittorrent-install.sh index d4d5abf25..f1e68aba0 100644 --- a/install/qbittorrent-install.sh +++ b/install/qbittorrent-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Setup qBittorrent-nox" -FULLRELEASE=$(curl -s https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +FULLRELEASE=$(curl -fsSL https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(echo $FULLRELEASE | cut -c 9-13) mkdir -p /opt/qbittorrent curl -fsSL "https://github.com/userdocs/qbittorrent-nox-static/releases/download/${FULLRELEASE}/x86_64-qbittorrent-nox" -o /opt/qbittorrent/qbittorrent-nox diff --git a/install/rabbitmq-install.sh b/install/rabbitmq-install.sh index 3a0bb86e1..513b744ac 100644 --- a/install/rabbitmq-install.sh +++ b/install/rabbitmq-install.sh @@ -23,9 +23,9 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Adding RabbitMQ signing key" -wget -qO- "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | gpg --dearmor >/usr/share/keyrings/com.rabbitmq.team.gpg -wget -qO- "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key" | gpg --dearmor >/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg -wget -qO- "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key" | gpg --dearmor >/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg +curl -fsSL "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | gpg --dearmor >/usr/share/keyrings/com.rabbitmq.team.gpg +curl -fsSL "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key" | gpg --dearmor >/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg +curl -fsSL "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key" | gpg --dearmor >/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg msg_ok "Signing keys added" msg_info "Adding RabbitMQ repository" diff --git a/install/radarr-install.sh b/install/radarr-install.sh index 90758dc98..e9475fb4c 100644 --- a/install/radarr-install.sh +++ b/install/radarr-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://radarr.video/ -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Radarr" mkdir -p /var/lib/radarr/ chmod 775 /var/lib/radarr/ -$STD wget --content-disposition 'https://radarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' +$STD curl -fJL 'https://radarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' $STD tar -xvzf Radarr.master.*.tar.gz mv Radarr /opt chmod 775 /opt/Radarr diff --git a/install/radicale-install.sh b/install/radicale-install.sh index ab6080059..bed34b116 100644 --- a/install/radicale-install.sh +++ b/install/radicale-install.sh @@ -27,10 +27,10 @@ $STD python3 -m pip install --upgrade https://github.com/Kozea/Radicale/archive/ RNDPASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13) $STD htpasswd -c -b -5 /opt/radicale/users admin $RNDPASS { -echo "Radicale Credentials" -echo "Admin User: admin" -echo "Admin Password: $RNDPASS" -} >> ~/radicale.creds + echo "Radicale Credentials" + echo "Admin User: admin" + echo "Admin Password: $RNDPASS" +} >>~/radicale.creds msg_ok "Done setting up Radicale" msg_info "Setup Service" @@ -67,4 +67,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" \ No newline at end of file +msg_ok "Cleaned" diff --git a/install/rdtclient-install.sh b/install/rdtclient-install.sh index a731517d5..4c5ce3ce9 100644 --- a/install/rdtclient-install.sh +++ b/install/rdtclient-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://github.com/rogerfar/rdt-client -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing ASP.NET Core Runtime" -wget -q https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb +curl -fsSL "https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb" -O $(basename "https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb") $STD dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb $STD apt-get update @@ -22,7 +22,7 @@ $STD apt-get install -y dotnet-sdk-9.0 msg_ok "Installed ASP.NET Core Runtime" msg_info "Installing rdtclient" -wget -q https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip +curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -O $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip") unzip -qq RealDebridClient.zip -d /opt/rdtc rm RealDebridClient.zip cd /opt/rdtc diff --git a/install/readarr-install.sh b/install/readarr-install.sh index 41e825a19..500eb663b 100644 --- a/install/readarr-install.sh +++ b/install/readarr-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Readarr" mkdir -p /var/lib/readarr/ chmod 775 /var/lib/readarr/ -$STD wget --content-disposition 'https://readarr.servarr.com/v1/update/develop/updatefile?os=linux&runtime=netcore&arch=x64' +$STD curl -fJL 'https://readarr.servarr.com/v1/update/develop/updatefile?os=linux&runtime=netcore&arch=x64' $STD tar -xvzf Readarr.develop.*.tar.gz mv Readarr /opt chmod 775 /opt/Readarr diff --git a/install/readeck-install.sh b/install/readeck-install.sh index f633e7429..edc3b5503 100644 --- a/install/readeck-install.sh +++ b/install/readeck-install.sh @@ -14,10 +14,10 @@ network_check update_os msg_info "Installing Readeck" -LATEST=$(curl -s https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1) +LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1) mkdir -p /opt/readeck cd /opt/readeck -wget -q -O readeck https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64 +curl -fsSL "https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64" -o "readeck" chmod a+x readeck msg_ok "Installed Readeck" diff --git a/install/recyclarr-install.sh b/install/recyclarr-install.sh index b93a4118e..4957feb83 100644 --- a/install/recyclarr-install.sh +++ b/install/recyclarr-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y git msg_ok "Installed Dependencies" msg_info "Installing Recyclarr" -wget -q $(curl -s https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4) +curl -fsSL "$(curl -fsSL https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4)" -O $(basename "$(curl -fsSL https://api.github.com/repos/recyclarr/recyclarr/releases/latest | grep download | grep linux-x64 | cut -d\" -f4)") tar -C /usr/local/bin -xJf recyclarr*.tar.xz mkdir -p /root/.config/recyclarr recyclarr config create diff --git a/install/redis-install.sh b/install/redis-install.sh index 52ccce087..15389fba3 100644 --- a/install/redis-install.sh +++ b/install/redis-install.sh @@ -20,7 +20,7 @@ $STD apt-get install -y lsb-release msg_ok "Installed Dependencies" msg_info "Installing Redis" -wget -qO- https://packages.redis.io/gpg | gpg --dearmor >/usr/share/keyrings/redis-archive-keyring.gpg +curl -fsSL "https://packages.redis.io/gpg" | gpg --dearmor >/usr/share/keyrings/redis-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" >/etc/apt/sources.list.d/redis.list $STD apt-get update $STD apt-get install -y redis diff --git a/install/revealjs-install.sh b/install/revealjs-install.sh index 161c86313..e234bcc00 100644 --- a/install/revealjs-install.sh +++ b/install/revealjs-install.sh @@ -30,8 +30,8 @@ msg_ok "Setup Node.js" msg_info "Setup ${APPLICATION}" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/hakimel/reveal.js/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/hakimel/reveal.js/archive/refs/tags/${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/hakimel/reveal.js/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/hakimel/reveal.js/archive/refs/tags/${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv reveal.js-${RELEASE}/ /opt/revealjs cd /opt/revealjs diff --git a/install/rtsptoweb-install.sh b/install/rtsptoweb-install.sh index 14ca51ae4..e096231df 100644 --- a/install/rtsptoweb-install.sh +++ b/install/rtsptoweb-install.sh @@ -20,8 +20,8 @@ msg_ok "Installed Dependencies" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -59,4 +59,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/runtipi-install.sh b/install/runtipi-install.sh index 5c137d4a5..94ca2348a 100644 --- a/install/runtipi-install.sh +++ b/install/runtipi-install.sh @@ -18,7 +18,7 @@ DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p "$(dirname "$DOCKER_CONFIG_PATH")" echo -e '{\n "log-driver": "journald"\n}' >"$DOCKER_CONFIG_PATH" cd /opt -wget -q https://raw.githubusercontent.com/runtipi/runtipi/master/scripts/install.sh +curl -fsSL "https://raw.githubusercontent.com/runtipi/runtipi/master/scripts/install.sh" -O $(basename "https://raw.githubusercontent.com/runtipi/runtipi/master/scripts/install.sh") chmod +x install.sh $STD ./install.sh chmod 666 /opt/runtipi/state/settings.json diff --git a/install/rustdeskserver-install.sh b/install/rustdeskserver-install.sh index 7d473954e..80c61d006 100644 --- a/install/rustdeskserver-install.sh +++ b/install/rustdeskserver-install.sh @@ -14,11 +14,11 @@ network_check update_os msg_info "Setup RustDesk" -RELEASE=$(curl -s https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') TEMPDIR=$(mktemp -d) -wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR -wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR -wget -q "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbr_${RELEASE}_amd64.deb" -P $TEMPDIR") +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-hbbs_${RELEASE}_amd64.deb" -P $TEMPDIR") +curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR" -O $(basename "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-utils_${RELEASE}_amd64.deb" -P $TEMPDIR") $STD dpkg -i $TEMPDIR/*.deb echo "${RELEASE}" >/opt/rustdesk.txt msg_ok "Setup RustDesk" @@ -30,4 +30,4 @@ msg_info "Cleaning up" rm -rf $TEMPDIR $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/sabnzbd-install.sh b/install/sabnzbd-install.sh index 0895886b5..d838b6a5e 100644 --- a/install/sabnzbd-install.sh +++ b/install/sabnzbd-install.sh @@ -33,7 +33,7 @@ rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED msg_ok "Setup Python3" msg_info "Installing SABnzbd" -RELEASE=$(curl -s https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') $STD tar zxvf <(curl -fsSL https://github.com/sabnzbd/sabnzbd/releases/download/$RELEASE/SABnzbd-${RELEASE}-src.tar.gz) mv SABnzbd-${RELEASE} /opt/sabnzbd cd /opt/sabnzbd diff --git a/install/seafile-install.sh b/install/seafile-install.sh index 81caf8e09..2e0a352ca 100644 --- a/install/seafile-install.sh +++ b/install/seafile-install.sh @@ -89,7 +89,7 @@ useradd seafile mkdir -p /home/seafile chown seafile: /home/seafile chown seafile: /opt/seafile -$STD su - seafile -c "wget -qc https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_11.0.13_x86-64.tar.gz" +$STD su - seafile -c "curl -fsSL https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_11.0.13_x86-64.tar.gz -O" $STD su - seafile -c "tar -xzf seafile-server_11.0.13_x86-64.tar.gz -C /opt/seafile/" $STD su - seafile -c "expect </usr/share/keyrings/ansible-archive-keyring.gpg +curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?fingerprint=on&op=get&search=0x6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367" | gpg --dearmour >/usr/share/keyrings/ansible-archive-keyring.gpg cat </etc/apt/sources.list.d/ansible.list deb [signed-by=/usr/share/keyrings/ansible-archive-keyring.gpg] http://ppa.launchpad.net/ansible/ansible/ubuntu jammy main EOF @@ -27,10 +27,10 @@ $STD apt install -y ansible msg_ok "Installed Dependencies" msg_info "Setup Semaphore" -RELEASE=$(curl -s https://api.github.com/repos/semaphoreui/semaphore/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/semaphoreui/semaphore/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') mkdir -p /opt/semaphore cd /opt/semaphore -wget -q https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb +curl -fsSL "https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/semaphoreui/semaphore/releases/download/v${RELEASE}/semaphore_${RELEASE}_linux_amd64.deb") $STD dpkg -i semaphore_${RELEASE}_linux_amd64.deb SEM_HASH=$(openssl rand -base64 32) diff --git a/install/sftpgo-install.sh b/install/sftpgo-install.sh index 6cb8ed2ae..c0b0fc188 100644 --- a/install/sftpgo-install.sh +++ b/install/sftpgo-install.sh @@ -21,8 +21,8 @@ msg_ok "Installed Dependencies" msg_info "Installing Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -30,7 +30,7 @@ set -o pipefail msg_ok "Installed Golang" msg_info "Installing SFTPGo" -curl -sS https://ftp.osuosl.org/pub/sftpgo/apt/gpg.key | gpg --dearmor -o /usr/share/keyrings/sftpgo-archive-keyring.gpg +curl -fsSLS https://ftp.osuosl.org/pub/sftpgo/apt/gpg.key | gpg --dearmor -o /usr/share/keyrings/sftpgo-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/sftpgo-archive-keyring.gpg] https://ftp.osuosl.org/pub/sftpgo/apt bookworm main" >/etc/apt/sources.list.d/sftpgo.list $STD apt-get update $STD apt-get install -y sftpgo @@ -42,4 +42,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/silverbullet-install.sh b/install/silverbullet-install.sh index 3d3d302e4..424b74f86 100644 --- a/install/silverbullet-install.sh +++ b/install/silverbullet-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://silverbullet.md -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -14,9 +14,9 @@ network_check update_os msg_info "Installing Silverbullet" -RELEASE=$(curl -s https://api.github.com/repos/silverbulletmd/silverbullet/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/silverbulletmd/silverbullet/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') mkdir -p /opt/silverbullet/bin /opt/silverbullet/space -wget -q https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip +curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -O $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip") unzip -oq -d /opt/silverbullet/bin/ silverbullet-server-linux-x86_64.zip chmod +x /opt/silverbullet/bin/silverbullet echo "${RELEASE}" >/opt/${APPLICATION}_version.txt diff --git a/install/snipeit-install.sh b/install/snipeit-install.sh index b6be70827..8df86daf7 100644 --- a/install/snipeit-install.sh +++ b/install/snipeit-install.sh @@ -39,8 +39,8 @@ msg_ok "Set up database" msg_info "Installing Snipe-IT" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/snipe/snipe-it/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/snipe/snipe-it/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/snipe/snipe-it/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" tar zxf $temp_file mv snipe-it-${RELEASE} /opt/snipe-it cd /opt/snipe-it diff --git a/install/sonarr-install.sh b/install/sonarr-install.sh index b41217dcb..d0c6708f1 100644 --- a/install/sonarr-install.sh +++ b/install/sonarr-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Sonarr v4" mkdir -p /var/lib/sonarr/ chmod 775 /var/lib/sonarr/ -wget -q -O SonarrV4.tar.gz 'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64' +curl -fsSL "'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64'" -o "SonarrV4.tar.gz" tar -xzf SonarrV4.tar.gz mv Sonarr /opt rm -rf SonarrV4.tar.gz diff --git a/install/spoolman-install.sh b/install/spoolman-install.sh index 49f7fc700..f4fa4b2be 100644 --- a/install/spoolman-install.sh +++ b/install/spoolman-install.sh @@ -32,14 +32,14 @@ $STD apt-get install -y \ msg_ok "Setup Python3" msg_info "Installing Spoolman" -RELEASE=$(wget -q https://github.com/Donkie/Spoolman/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) +RELEASE=$(curl -fsSL https://github.com/Donkie/Spoolman/releases/latest | grep "title>Release" | cut -d " " -f 4) cd /opt -wget -q https://github.com/Donkie/Spoolman/releases/download/$RELEASE/spoolman.zip +curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/$RELEASE/spoolman.zip" -O $(basename "https://github.com/Donkie/Spoolman/releases/download/$RELEASE/spoolman.zip") unzip -q spoolman.zip -d spoolman rm -rf spoolman.zip cd spoolman $STD pip3 install -r requirements.txt -wget -q https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example -O .env +curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env" echo "${RELEASE}" >/opt/${APPLICATION}_version.txt msg_ok "Installed Spoolman" diff --git a/install/sqlserver2022-install.sh b/install/sqlserver2022-install.sh index 9860ddb17..ef7b39582 100644 --- a/install/sqlserver2022-install.sh +++ b/install/sqlserver2022-install.sh @@ -20,8 +20,8 @@ $STD apt install -y \ msg_ok "Installed Dependencies" msg_info "Setup SQL Server 2022" -curl -s https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc > /dev/null -curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | tee /etc/apt/sources.list.d/mssql-server-2022.list > /dev/null +curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc >/dev/null +curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | tee /etc/apt/sources.list.d/mssql-server-2022.list >/dev/null $STD apt-get update -y $STD apt-get install -y mssql-server msg_ok "Setup Server 2022" @@ -29,8 +29,8 @@ msg_ok "Setup Server 2022" msg_info "Installing SQL Server Tools" export DEBIAN_FRONTEND=noninteractive export ACCEPT_EULA=Y -curl -s https://packages.microsoft.com/keys/microsoft.asc | tee /etc/apt/trusted.gpg.d/microsoft.asc > /dev/null -curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/prod.list | tee /etc/apt/sources.list.d/mssql-release.list > /dev/null +curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | tee /etc/apt/trusted.gpg.d/microsoft.asc >/dev/null +curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/prod.list | tee /etc/apt/sources.list.d/mssql-release.list >/dev/null $STD apt-get update $STD apt-get install -y -qq \ mssql-tools18 \ diff --git a/install/stirling-pdf-install.sh b/install/stirling-pdf-install.sh index 2af620c44..ab99f73f4 100644 --- a/install/stirling-pdf-install.sh +++ b/install/stirling-pdf-install.sh @@ -54,8 +54,8 @@ $STD pip3 install \ msg_ok "Installed Python Dependencies" msg_info "Installing Azul Zulu" -wget -qO /etc/apt/trusted.gpg.d/zulu-repo.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -wget -q https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb +curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -o "/etc/apt/trusted.gpg.d/zulu-repo.asc" +curl -fsSL "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb" -O $(basename "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb") $STD dpkg -i zulu-repo_1.0.0-3_all.deb $STD apt-get update $STD apt-get -y install zulu17-jdk @@ -75,8 +75,8 @@ $STD apt-get install -y 'tesseract-ocr-*' msg_ok "Installed Language Packs" msg_info "Installing Stirling-PDF (Additional Patience)" -RELEASE=$(curl -s https://api.github.com/repos/Stirling-Tools/Stirling-PDF/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v${RELEASE}.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/Stirling-Tools/Stirling-PDF/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v${RELEASE}.tar.gz" -O $(basename "https://github.com/Stirling-Tools/Stirling-PDF/archive/refs/tags/v${RELEASE}.tar.gz") tar -xzf v${RELEASE}.tar.gz cd Stirling-PDF-$RELEASE chmod +x ./gradlew diff --git a/install/suwayomiserver-install.sh b/install/suwayomiserver-install.sh index f432597d3..3ca7be1c9 100644 --- a/install/suwayomiserver-install.sh +++ b/install/suwayomiserver-install.sh @@ -20,9 +20,9 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Settting up Suwayomi-Server" -URL=$(curl -s https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "browser_download_url" | awk '{print substr($2, 2, length($2)-2) }' | tail -n+2 | head -n 1) -RELEASE=$(curl -s https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q $URL +URL=$(curl -fsSL https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "browser_download_url" | awk '{print substr($2, 2, length($2)-2) }' | tail -n+2 | head -n 1) +RELEASE=$(curl -fsSL https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "$URL" -O $(basename "$URL") $STD dpkg -i *.deb echo ${RELEASE} >/opt/suwayomi-server_version.txt msg_ok "Done setting up Suwayomi-Server" diff --git a/install/syncthing-install.sh b/install/syncthing-install.sh index e0d8e32a8..b55a6e6d3 100644 --- a/install/syncthing-install.sh +++ b/install/syncthing-install.sh @@ -18,7 +18,7 @@ $STD apt-get install -y gnupg msg_ok "Installed Dependencies" msg_info "Installing Syncthing" -curl -sL -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg +curl -fsSLL -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg sh -c 'echo "deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" > /etc/apt/sources.list.d/syncthing.list' $STD apt-get update $STD apt-get install -y syncthing diff --git a/install/tandoor-install.sh b/install/tandoor-install.sh index ea09d35ef..9a8facdf9 100644 --- a/install/tandoor-install.sh +++ b/install/tandoor-install.sh @@ -61,7 +61,7 @@ $STD pip3 install -r /opt/tandoor/requirements.txt cd /opt/tandoor/vue $STD yarn install $STD yarn build -wget -q https://raw.githubusercontent.com/TandoorRecipes/recipes/develop/.env.template -O /opt/tandoor/.env +curl -fsSL "https://raw.githubusercontent.com/TandoorRecipes/recipes/develop/.env.template" -o "/opt/tandoor/.env" DB_NAME=db_recipes DB_USER=tandoor DB_ENCODING=utf8 diff --git a/install/tasmoadmin-install.sh b/install/tasmoadmin-install.sh index 6b72f8537..40c35e8da 100644 --- a/install/tasmoadmin-install.sh +++ b/install/tasmoadmin-install.sh @@ -25,7 +25,7 @@ $STD apt-get install -y git msg_ok "Installed Dependencies" msg_info "Installing TasmoAdmin" -wget -q https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v3.1.1/tasmoadmin_v3.1.1.tar.gz +curl -fsSL "https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v3.1.1/tasmoadmin_v3.1.1.tar.gz" -O $(basename "https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v3.1.1/tasmoadmin_v3.1.1.tar.gz") tar -xzf tasmoadmin_v3.1.1.tar.gz -C /var/www/ rm -rf tasmoadmin_v3.1.1.tar.gz /etc/php/8.2/apache2/conf.d/10-opcache.ini chown -R www-data:www-data /var/www/tasmoadmin diff --git a/install/tasmocompiler-install.sh b/install/tasmocompiler-install.sh index e15b16847..2ff43218c 100644 --- a/install/tasmocompiler-install.sh +++ b/install/tasmocompiler-install.sh @@ -39,8 +39,8 @@ msg_ok "Setup Platformio" msg_info "Setup TasmoCompiler" mkdir /tmp/Tasmota -RELEASE=$(curl -s https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/benzino77/tasmocompiler/archive/refs/tags/v${RELEASE}.tar.gz -O /tmp/v${RELEASE}.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/benzino77/tasmocompiler/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/benzino77/tasmocompiler/archive/refs/tags/v${RELEASE}.tar.gz" -o "/tmp/v${RELEASE}.tar.gz" cd /tmp tar xzf /tmp/v${RELEASE}.tar.gz mv tasmocompiler-${RELEASE}/ /opt/tasmocompiler/ diff --git a/install/tdarr-install.sh b/install/tdarr-install.sh index ef67547fa..87c81f779 100644 --- a/install/tdarr-install.sh +++ b/install/tdarr-install.sh @@ -31,8 +31,8 @@ msg_ok "Set Up Hardware Acceleration" msg_info "Installing Tdarr" mkdir -p /opt/tdarr cd /opt/tdarr -RELEASE=$(curl -s https://f000.backblazeb2.com/file/tdarrs/versions.json | grep -oP '(?<="Tdarr_Updater": ")[^"]+' | grep linux_x64 | head -n 1) -wget -q $RELEASE +RELEASE=$(curl -fsSL https://f000.backblazeb2.com/file/tdarrs/versions.json | grep -oP '(?<="Tdarr_Updater": ")[^"]+' | grep linux_x64 | head -n 1) +curl -fsSL "$RELEASE" -O $(basename "$RELEASE") $STD unzip Tdarr_Updater.zip rm -rf Tdarr_Updater.zip chmod +x Tdarr_Updater diff --git a/install/technitiumdns-install.sh b/install/technitiumdns-install.sh index 1cb00b242..846ffa64c 100644 --- a/install/technitiumdns-install.sh +++ b/install/technitiumdns-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Installing ASP.NET Core Runtime" -wget -q https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb +curl -fsSL "https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb" -o "packages-microsoft-prod.deb" $STD dpkg -i packages-microsoft-prod.deb rm -rf packages-microsoft-prod.deb $STD apt-get update diff --git a/install/teddycloud-install.sh b/install/teddycloud-install.sh index ac9485360..85500c8cf 100644 --- a/install/teddycloud-install.sh +++ b/install/teddycloud-install.sh @@ -21,9 +21,9 @@ $STD apt-get install -y \ msg_ok "Installed Dependencies" msg_info "Installing TeddyCloud" -RELEASE="$(curl -s https://api.github.com/repos/toniebox-reverse-engineering/teddycloud/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')" +RELEASE="$(curl -fsSL https://api.github.com/repos/toniebox-reverse-engineering/teddycloud/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')" VERSION="${RELEASE#tc_v}" -wget -q "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" +curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -O $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip") unzip -q -d "/opt/teddycloud-${VERSION}" "teddycloud.amd64.release_v${VERSION}.zip" ln -fns "/opt/teddycloud-${VERSION}" /opt/teddycloud rm -rf teddycloud.amd64.release_v${VERSION}.zip diff --git a/install/the-lounge-install.sh b/install/the-lounge-install.sh index 5c54c0723..80bf8b5ea 100644 --- a/install/the-lounge-install.sh +++ b/install/the-lounge-install.sh @@ -34,8 +34,8 @@ msg_ok "Installed Node.js" msg_info "Installing The Lounge" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb +RELEASE=$(curl -fsSL https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb" -O $(basename "https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb") $STD dpkg -i ./thelounge_${RELEASE}_all.deb echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" msg_ok "Installed The Lounge" diff --git a/install/threadfin-install.sh b/install/threadfin-install.sh index 98619fc6f..7d333a106 100644 --- a/install/threadfin-install.sh +++ b/install/threadfin-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Threadfin" mkdir -p /opt/threadfin -wget -q -O /opt/threadfin/threadfin 'https://github.com/Threadfin/Threadfin/releases/latest/download/Threadfin_linux_amd64' +curl -fsSL "'https://github.com/Threadfin/Threadfin/releases/latest/download/Threadfin_linux_amd64'" -o "/opt/threadfin/threadfin" chmod +x /opt/threadfin/threadfin msg_ok "Installed Threadfin" diff --git a/install/tianji-install.sh b/install/tianji-install.sh index 4cc78127a..6f18cd0ec 100644 --- a/install/tianji-install.sh +++ b/install/tianji-install.sh @@ -56,8 +56,8 @@ msg_ok "Set up PostgreSQL" msg_info "Installing Tianji (Extreme Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/msgbyte/tianji/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/msgbyte/tianji/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv tianji-${RELEASE} /opt/tianji cd tianji diff --git a/install/traccar-install.sh b/install/traccar-install.sh index d7c61263c..f465729ee 100644 --- a/install/traccar-install.sh +++ b/install/traccar-install.sh @@ -13,9 +13,9 @@ setting_up_container network_check update_os -RELEASE=$(curl -s https://api.github.com/repos/traccar/traccar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/traccar/traccar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Installing Traccar v${RELEASE}" -wget -q https://github.com/traccar/traccar/releases/download/v${RELEASE}/traccar-linux-64-${RELEASE}.zip +curl -fsSL "https://github.com/traccar/traccar/releases/download/v${RELEASE}/traccar-linux-64-${RELEASE}.zip" -O $(basename "https://github.com/traccar/traccar/releases/download/v${RELEASE}/traccar-linux-64-${RELEASE}.zip") $STD unzip traccar-linux-64-${RELEASE}.zip $STD ./traccar.run systemctl enable -q --now traccar diff --git a/install/traefik-install.sh b/install/traefik-install.sh index 1873f5b42..f451364c5 100644 --- a/install/traefik-install.sh +++ b/install/traefik-install.sh @@ -18,10 +18,10 @@ $STD apt-get install -y gpg $STD apt-get install -y apt-transport-https msg_ok "Installed Dependencies" -RELEASE=$(curl -s https://api.github.com/repos/traefik/traefik/releases | grep -oP '"tag_name":\s*"v\K[\d.]+?(?=")' | sort -V | tail -n 1) +RELEASE=$(curl -fsSL https://api.github.com/repos/traefik/traefik/releases | grep -oP '"tag_name":\s*"v\K[\d.]+?(?=")' | sort -V | tail -n 1) msg_info "Installing Traefik v${RELEASE}" mkdir -p /etc/traefik/{conf.d,ssl} -wget -q https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz +curl -fsSL "https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz" -O $(basename "https://github.com/traefik/traefik/releases/download/v${RELEASE}/traefik_v${RELEASE}_linux_amd64.tar.gz") tar -C /tmp -xzf traefik*.tar.gz mv /tmp/traefik /usr/bin/ rm -rf traefik*.tar.gz diff --git a/install/trilium-install.sh b/install/trilium-install.sh index 234f25cff..d50080713 100644 --- a/install/trilium-install.sh +++ b/install/trilium-install.sh @@ -15,8 +15,8 @@ update_os msg_info "Setup TriliumNext" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz +RELEASE=$(curl -fsSL https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz" -O $(basename "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz") tar -xf TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz mv TriliumNextNotes-Server-$RELEASE-linux-x64 /opt/trilium echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" diff --git a/install/typesense-install.sh b/install/typesense-install.sh index 6c26f397f..369d2cf94 100644 --- a/install/typesense-install.sh +++ b/install/typesense-install.sh @@ -14,9 +14,9 @@ network_check update_os msg_info "Installing TypeSense" -RELEASE=$(curl -s https://api.github.com/repos/typesense/typesense/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +RELEASE=$(curl -fsSL https://api.github.com/repos/typesense/typesense/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') cd /opt -wget -q https://dl.typesense.org/releases/${RELEASE}/typesense-server-${RELEASE}-amd64.deb +curl -fsSL "https://dl.typesense.org/releases/${RELEASE}/typesense-server-${RELEASE}-amd64.deb" -O $(basename "https://dl.typesense.org/releases/${RELEASE}/typesense-server-${RELEASE}-amd64.deb") $STD apt install -y /opt/typesense-server-${RELEASE}-amd64.deb echo 'enable-cors = true' >>/etc/typesense/typesense-server.ini echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" diff --git a/install/umbrel-install.sh b/install/umbrel-install.sh index 198ce4439..edf457530 100644 --- a/install/umbrel-install.sh +++ b/install/umbrel-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://umbrel.com/ -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -16,7 +16,7 @@ update_os msg_info "Installing Umbrel (Patience)" DOCKER_CONFIG_PATH='/etc/docker/daemon.json' mkdir -p $(dirname $DOCKER_CONFIG_PATH) -echo -e '{\n "log-driver": "journald"\n}' > /etc/docker/daemon.json +echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json $STD bash <(curl -fsSL https://umbrel.sh) systemctl daemon-reload $STD systemctl enable --now umbrel-startup.service diff --git a/install/unifi-install.sh b/install/unifi-install.sh index 9b9be2a09..084b7955f 100644 --- a/install/unifi-install.sh +++ b/install/unifi-install.sh @@ -19,7 +19,7 @@ $STD apt-get install -y gnupg msg_ok "Installed Dependencies" msg_info "Installing Eclipse Temurin JRE" -wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg +curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/adoptium.gpg] https://packages.adoptium.net/artifactory/deb bookworm main" >/etc/apt/sources.list.d/adoptium.list $STD apt-get update $STD apt-get install -y temurin-17-jre @@ -29,16 +29,16 @@ if ! grep -q -m1 'avx[^ ]*' /proc/cpuinfo; then msg_ok "No AVX Support Detected" msg_info "Installing MongoDB 4.4" if ! dpkg -l | grep -q "libssl1.1"; then - wget -q http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1n-0+deb10u6_amd64.deb + curl -fsSL "http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1n-0+deb10u6_amd64.deb" -O $(basename "http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1n-0+deb10u6_amd64.deb") $STD dpkg -i libssl1.1_1.1.1n-0+deb10u6_amd64.deb fi - wget -qO- https://www.mongodb.org/static/pgp/server-4.4.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-4.4.gpg + curl -fsSL "https://www.mongodb.org/static/pgp/server-4.4.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-4.4.gpg echo "deb [signed-by=/usr/share/keyrings/mongodb-server-4.4.gpg] https://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" >/etc/apt/sources.list.d/mongodb-org-4.4.list $STD apt-get update $STD apt-get install -y mongodb-org else msg_info "Installing MongoDB 7.0" - wget -qO- https://www.mongodb.org/static/pgp/server-7.0.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-7.0.gpg + curl -fsSL "https://www.mongodb.org/static/pgp/server-7.0.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-7.0.gpg echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] http://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main" >/etc/apt/sources.list.d/mongodb-org-7.0.list $STD apt-get update $STD apt-get install -y mongodb-org @@ -46,7 +46,7 @@ fi msg_ok "Installed MongoDB" msg_info "Installing UniFi Network Server" -wget -qO /etc/apt/trusted.gpg.d/unifi-repo.gpg https://dl.ui.com/unifi/unifi-repo.gpg +curl -fsSL "https://dl.ui.com/unifi/unifi-repo.gpg" -o "/etc/apt/trusted.gpg.d/unifi-repo.gpg" echo "deb [ arch=amd64 signed-by=/etc/apt/trusted.gpg.d/unifi-repo.gpg] https://www.ui.com/downloads/unifi/debian stable ubiquiti" >/etc/apt/sources.list.d/100-ubnt-unifi.list $STD apt-get update $STD apt-get install -y unifi diff --git a/install/vaultwarden-install.sh b/install/vaultwarden-install.sh index 8cdb949f7..63054754d 100644 --- a/install/vaultwarden-install.sh +++ b/install/vaultwarden-install.sh @@ -25,16 +25,16 @@ $STD apt-get -qqy install \ argon2 msg_ok "Installed Dependencies" -WEBVAULT=$(curl -s https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest | +WEBVAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -VAULT=$(curl -s https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | +VAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') msg_info "Installing Rust" -wget -qL https://sh.rustup.rs +curl -fsSL https://sh.rustup.rs -O $STD bash index.html -y --profile minimal echo 'export PATH=~/.cargo/bin:$PATH' >>~/.bashrc export PATH=~/.cargo/bin:$PATH diff --git a/install/victoriametrics-install.sh b/install/victoriametrics-install.sh index 178fcd30c..e028a4f2a 100644 --- a/install/victoriametrics-install.sh +++ b/install/victoriametrics-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://github.com/VictoriaMetrics/VictoriaMetrics -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -17,9 +17,9 @@ msg_info "Setup VictoriaMetrics" temp_dir=$(mktemp -d) cd $temp_dir mkdir -p /opt/victoriametrics/data -RELEASE=$(curl -s https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz -wget -q https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz +RELEASE=$(curl -fsSL https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz" -O $(basename "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/victoria-metrics-linux-amd64-v${RELEASE}.tar.gz") +curl -fsSL "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz" -O $(basename "https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${RELEASE}/vmutils-linux-amd64-v${RELEASE}.tar.gz") tar -xf victoria-metrics-linux-amd64-v${RELEASE}.tar.gz -C /opt/victoriametrics tar -xf vmutils-linux-amd64-v${RELEASE}.tar.gz -C /opt/victoriametrics chmod +x /opt/victoriametrics/* diff --git a/install/vikunja-install.sh b/install/vikunja-install.sh index 80f375998..293962c26 100644 --- a/install/vikunja-install.sh +++ b/install/vikunja-install.sh @@ -19,8 +19,8 @@ msg_ok "Installed Dependencies" msg_info "Setup Vikunja (Patience)" cd /opt -RELEASE=$(curl -s https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1) -wget -q "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" +RELEASE=$(curl -fsSL https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1) +curl -fsSL "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" -O $(basename "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb") $STD dpkg -i vikunja-$RELEASE-amd64.deb sed -i 's|^ timezone: .*| timezone: UTC|' /etc/vikunja/config.yml sed -i 's|"./vikunja.db"|"/etc/vikunja/vikunja.db"|' /etc/vikunja/config.yml diff --git a/install/wallos-install.sh b/install/wallos-install.sh index 4884e9316..793a4ad1a 100644 --- a/install/wallos-install.sh +++ b/install/wallos-install.sh @@ -23,8 +23,8 @@ msg_ok "Installed Dependencies" msg_info "Installing Wallos (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/ellite/Wallos/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/ellite/Wallos/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/ellite/Wallos/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv Wallos-${RELEASE} /opt/wallos cd /opt/wallos diff --git a/install/wastebin-install.sh b/install/wastebin-install.sh index 58226b63a..407e38b95 100644 --- a/install/wastebin-install.sh +++ b/install/wastebin-install.sh @@ -15,8 +15,8 @@ update_os msg_info "Installing Wastebin" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip -O $temp_file +RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file" unzip -q $temp_file mkdir -p /opt/wastebin mv wastebin /opt/wastebin/ diff --git a/install/watcharr-install.sh b/install/watcharr-install.sh index c39d8e04c..fb046ce39 100644 --- a/install/watcharr-install.sh +++ b/install/watcharr-install.sh @@ -22,8 +22,8 @@ msg_ok "Installed Dependencies" msg_info "Setup Golang" set +o pipefail temp_file=$(mktemp) -golang_tarball=$(curl -s https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) -wget -q https://golang.org/dl/"$golang_tarball" -O "$temp_file" +golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1) +curl -fsSL "https://golang.org/dl/"$golang_tarball" -o ""$temp_file"" tar -C /usr/local -xzf "$temp_file" ln -sf /usr/local/go/bin/go /usr/local/bin/go rm -f "$temp_file" @@ -40,8 +40,8 @@ msg_ok "Setup Node.js" msg_info "Setup Watcharr" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/sbondCo/Watcharr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/sbondCo/Watcharr/archive/refs/tags/v${RELEASE}.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/sbondCo/Watcharr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/sbondCo/Watcharr/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file"" tar -xzf "$temp_file" mv Watcharr-${RELEASE}/ /opt/watcharr cd /opt/watcharr @@ -87,4 +87,4 @@ msg_info "Cleaning up" rm -f "$temp_file" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file diff --git a/install/watchyourlan-install.sh b/install/watchyourlan-install.sh index c13cc92d3..3d81684d5 100644 --- a/install/watchyourlan-install.sh +++ b/install/watchyourlan-install.sh @@ -18,8 +18,8 @@ $STD apt-get install -y {gpg,arp-scan,ieee-data,libwww-perl} msg_ok "Installed Dependencies" msg_info "Installing WatchYourLAN" -RELEASE=$(curl -s https://api.github.com/repos/aceberg/WatchYourLAN/releases/latest | grep -o '"tag_name": *"[^"]*"' | cut -d '"' -f 4) -wget -q https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb +RELEASE=$(curl -fsSL https://api.github.com/repos/aceberg/WatchYourLAN/releases/latest | grep -o '"tag_name": *"[^"]*"' | cut -d '"' -f 4) +curl -fsSL "https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb" -O $(basename "https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb") $STD dpkg -i watchyourlan_${RELEASE}_linux_amd64.deb rm watchyourlan_${RELEASE}_linux_amd64.deb mkdir /data diff --git a/install/wavelog-install.sh b/install/wavelog-install.sh index 0b5500434..e35c05e73 100644 --- a/install/wavelog-install.sh +++ b/install/wavelog-install.sh @@ -42,8 +42,8 @@ sed -i '/upload_max_filesize/s/= .*/= 8M/' /etc/php/8.2/apache2/php.ini msg_ok "Set up PHP" msg_info "Installing Wavelog" -RELEASE=$(curl -s https://api.github.com/repos/wavelog/wavelog/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/wavelog/wavelog/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv wavelog-${RELEASE}/ /opt/wavelog chown -R www-data:www-data /opt/wavelog/ diff --git a/install/wazuh-install.sh b/install/wazuh-install.sh index ff447a6ac..989c91c6d 100644 --- a/install/wazuh-install.sh +++ b/install/wazuh-install.sh @@ -14,7 +14,7 @@ network_check update_os msg_info "Fetching Latest Wazuh Version" -RELEASE=$(curl -s https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '"tag_name"' | awk -F '"' '{print substr($4, 2, length($2)-4)}') +RELEASE=$(curl -fsSL https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '"tag_name"' | awk -F '"' '{print substr($4, 2, length($2)-4)}') msg_ok "Latest Wazuh Version: $RELEASE" msg_info "Setup Wazuh" diff --git a/install/web-check-install.sh b/install/web-check-install.sh index ef6ad3d14..c2d1bd5e4 100644 --- a/install/web-check-install.sh +++ b/install/web-check-install.sh @@ -71,7 +71,7 @@ msg_ok "Setup Chromium" msg_info "Installing Web-Check (Patience)" temp_file=$(mktemp) RELEASE="patch-1" -wget -q "https://github.com/CrazyWolf13/web-check/archive/refs/heads/${RELEASE}.tar.gz" -O $temp_file +curl -fsSL "https://github.com/CrazyWolf13/web-check/archive/refs/heads/${RELEASE}.tar.gz" -o "$temp_file" tar xzf $temp_file mv web-check-${RELEASE} /opt/web-check cd /opt/web-check diff --git a/install/wger-install.sh b/install/wger-install.sh index 018eddd49..b12c6fa7f 100644 --- a/install/wger-install.sh +++ b/install/wger-install.sh @@ -48,8 +48,8 @@ mkdir /home/wger/{static,media} chmod o+w /home/wger/media temp_dir=$(mktemp -d) cd $temp_dir -RELEASE=$(curl -s https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}') -wget -q "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" +RELEASE=$(curl -fsSL https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}') +curl -fsSL "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" -O $(basename "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz") tar xzf $RELEASE.tar.gz mv wger-$RELEASE /home/wger/src cd /home/wger/src diff --git a/install/whisparr-install.sh b/install/whisparr-install.sh index 3600ea20a..d6319491d 100644 --- a/install/whisparr-install.sh +++ b/install/whisparr-install.sh @@ -20,7 +20,7 @@ msg_ok "Installed Dependencies" msg_info "Installing Whisparr" mkdir -p /var/lib/whisparr/ chmod 775 /var/lib/whisparr/ -$STD wget --content-disposition 'https://whisparr.servarr.com/v1/update/nightly/updatefile?os=linux&runtime=netcore&arch=x64' +$STD curl -fJL 'https://whisparr.servarr.com/v1/update/nightly/updatefile?os=linux&runtime=netcore&arch=x64' $STD tar -xvzf Whisparr.develop.*.tar.gz mv Whisparr /opt chmod 775 /opt/Whisparr diff --git a/install/wikijs-install.sh b/install/wikijs-install.sh index 076588081..4b61b102a 100644 --- a/install/wikijs-install.sh +++ b/install/wikijs-install.sh @@ -58,8 +58,8 @@ msg_ok "Set up PostgreSQL" msg_info "Setup Wiki.js" temp_file=$(mktemp) -RELEASE=$(curl -s https://api.github.com/repos/Requarks/wiki/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/requarks/wiki/releases/download/v${RELEASE}/wiki-js.tar.gz" -O "$temp_file" +RELEASE=$(curl -fsSL https://api.github.com/repos/Requarks/wiki/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/requarks/wiki/releases/download/v${RELEASE}/wiki-js.tar.gz" -o ""$temp_file"" mkdir /opt/wikijs tar -xzf "$temp_file" -C /opt/wikijs mv /opt/wikijs/config.sample.yml /opt/wikijs/config.yml diff --git a/install/wordpress-install.sh b/install/wordpress-install.sh index b4efe2ef5..418a9f61e 100644 --- a/install/wordpress-install.sh +++ b/install/wordpress-install.sh @@ -38,7 +38,7 @@ msg_ok "Set up Database" msg_info "Installing Wordpress (Patience)" cd /var/www/html -wget -q https://wordpress.org/latest.zip +curl -fsSL "https://wordpress.org/latest.zip" -O $(basename "https://wordpress.org/latest.zip") unzip -q latest.zip chown -R www-data:www-data wordpress/ cd /var/www/html/wordpress diff --git a/install/yt-dlp-webui-install.sh b/install/yt-dlp-webui-install.sh index 1466b5483..bf60599ac 100644 --- a/install/yt-dlp-webui-install.sh +++ b/install/yt-dlp-webui-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://github.com/marcopiovanello/yt-dlp-web-ui -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -18,14 +18,14 @@ $STD apt-get install -y ffmpeg msg_ok "Installed Dependencies" msg_info "Installing ${APPLICATION}" -RELEASE=$(curl -s https://api.github.com/repos/marcopiovanello/yt-dlp-web-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/marcopiovanello/yt-dlp-web-ui/releases/download/v${RELEASE}/yt-dlp-webui_linux-amd64" -O /usr/local/bin/yt-dlp-webui +RELEASE=$(curl -fsSL https://api.github.com/repos/marcopiovanello/yt-dlp-web-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/marcopiovanello/yt-dlp-web-ui/releases/download/v${RELEASE}/yt-dlp-webui_linux-amd64" -o "/usr/local/bin/yt-dlp-webui" chmod +x /usr/local/bin/yt-dlp-webui echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" msg_ok "Installed ${APPLICATION}" msg_info "Installing yt-dlp" -wget -q https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -O /usr/local/bin/yt-dlp +curl -fsSL "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp" -o "/usr/local/bin/yt-dlp" chmod a+rx /usr/local/bin/yt-dlp msg_ok "Installed yt-dlp" @@ -37,9 +37,9 @@ RPC_PASSWORD=$(openssl rand -base64 16) echo "yt-dlp-webui-Credentials" echo "Username: admin" echo "Password: ${RPC_PASSWORD}" -} >> ~/yt-dlp-webui.creds +} >>~/yt-dlp-webui.creds -cat < /opt/yt-dlp-webui/config.conf +cat </opt/yt-dlp-webui/config.conf # Host where server will listen at (default: "0.0.0.0") #host: 0.0.0.0 @@ -76,7 +76,7 @@ downloaderPath: /usr/local/bin/yt-dlp #frontend_path: ./web/solid-frontend EOF -cat < /etc/systemd/system/yt-dlp-webui.service +cat </etc/systemd/system/yt-dlp-webui.service [Unit] Description=yt-dlp-webui service file After=network.target diff --git a/install/yunohost-install.sh b/install/yunohost-install.sh index 207d77117..4e9ac189a 100644 --- a/install/yunohost-install.sh +++ b/install/yunohost-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://yunohost.org/ -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -22,7 +22,7 @@ msg_ok "Installed Dependencies" msg_info "Installing YunoHost (Patience)" touch /etc/.pve-ignore.resolv.conf -curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg +curl -fsSLSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg $STD bash <(curl -fsSL https://install.yunohost.org) -a msg_ok "Installed YunoHost" diff --git a/install/zabbix-install.sh b/install/zabbix-install.sh index 1e5a478d4..8273d1236 100644 --- a/install/zabbix-install.sh +++ b/install/zabbix-install.sh @@ -5,7 +5,7 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://www.zabbix.com/ -source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" color verb_ip6 catch_errors @@ -15,10 +15,10 @@ update_os msg_info "Installing Zabbix" cd /tmp -wget -q https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb +curl -fsSL "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb" -O $(basename "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb") $STD dpkg -i /tmp/zabbix-release_latest+debian12_all.deb $STD apt-get update -$STD apt-get install -y zabbix-server-pgsql zabbix-frontend-php php8.2-pgsql zabbix-apache-conf zabbix-sql-scripts +$STD apt-get install -y zabbix-server-pgsql zabbix-frontend-php php8.2-pgsql zabbix-apache-conf zabbix-sql-scripts $STD apt-get install -y zabbix-agent2 zabbix-agent2-plugin-* msg_ok "Installed Zabbix" diff --git a/install/zerotier-one-install.sh b/install/zerotier-one-install.sh index 673648cdc..25447d3e6 100644 --- a/install/zerotier-one-install.sh +++ b/install/zerotier-one-install.sh @@ -18,8 +18,8 @@ $STD apt-get install -y gnupg msg_ok "Installed Dependencies" msg_info "Setting up Zerotier-One" -curl -s 'https://raw.githubusercontent.com/zerotier/ZeroTierOne/main/doc/contact%40zerotier.com.gpg' | gpg --import && - if z="$(curl -s 'https://install.zerotier.com/' | gpg)"; then +curl -fsSL 'https://raw.githubusercontent.com/zerotier/ZeroTierOne/main/doc/contact%40zerotier.com.gpg' | gpg --import && + if z="$(curl -fsSL 'https://install.zerotier.com/' | gpg)"; then echo "$z" | sudo bash fi msg_ok "Setup Zerotier-One" diff --git a/install/zigbee2mqtt-install.sh b/install/zigbee2mqtt-install.sh index 9c6a0f724..d006df8a6 100644 --- a/install/zigbee2mqtt-install.sh +++ b/install/zigbee2mqtt-install.sh @@ -40,8 +40,8 @@ msg_ok "Installed pnpm" msg_info "Setting up Zigbee2MQTT" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -O $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip") unzip -q ${RELEASE}.zip mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt cd /opt/zigbee2mqtt/data diff --git a/install/zipline-install.sh b/install/zipline-install.sh index 3d167420a..ddc7d57cf 100644 --- a/install/zipline-install.sh +++ b/install/zipline-install.sh @@ -51,8 +51,8 @@ msg_ok "Set up PostgreSQL" msg_info "Installing Zipline (Patience)" cd /opt -RELEASE=$(curl -s https://api.github.com/repos/diced/zipline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -wget -q "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" +RELEASE=$(curl -fsSL https://api.github.com/repos/diced/zipline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') +curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -O $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip") unzip -q v${RELEASE}.zip mv zipline-${RELEASE} /opt/zipline cd /opt/zipline diff --git a/install/zitadel-install.sh b/install/zitadel-install.sh index 1c0a4a56c..d56092efc 100644 --- a/install/zitadel-install.sh +++ b/install/zitadel-install.sh @@ -39,8 +39,8 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME OWNER $DB_ADMIN_USER;" msg_ok "Installed PostgreSQL" msg_info "Installing Zitadel" -RELEASE=$(curl -si https://github.com/zitadel/zitadel/releases/latest | grep location: | cut -d '/' -f 8 | tr -d '\r') -wget -qc https://github.com/zitadel/zitadel/releases/download/$RELEASE/zitadel-linux-amd64.tar.gz -O - | tar -xz +RELEASE=$(curl -fsSLi https://github.com/zitadel/zitadel/releases/latest | grep location: | cut -d '/' -f 8 | tr -d '\r') +curl -fsSL https://github.com/zitadel/zitadel/releases/download/$RELEASE/zitadel-linux-amd64.tar.gz | tar -xz mv zitadel-linux-amd64/zitadel /usr/local/bin msg_ok "Installed Zitadel" diff --git a/install/zoraxy-install.sh b/install/zoraxy-install.sh index a887b33cf..1e279d503 100644 --- a/install/zoraxy-install.sh +++ b/install/zoraxy-install.sh @@ -14,8 +14,8 @@ network_check update_os msg_info "Installing Zoraxy (Patience)" -RELEASE=$(curl -s https://api.github.com/repos/tobychui/zoraxy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" +RELEASE=$(curl -fsSL https://api.github.com/repos/tobychui/zoraxy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" -O $(basename "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64") mkdir -p /opt/zoraxy mv zoraxy_linux_amd64 /opt/zoraxy/zoraxy chmod +x /opt/zoraxy/zoraxy diff --git a/install/zwave-js-ui-install.sh b/install/zwave-js-ui-install.sh index af7a6f541..d124af7aa 100644 --- a/install/zwave-js-ui-install.sh +++ b/install/zwave-js-ui-install.sh @@ -17,8 +17,8 @@ msg_info "Installing Z-Wave JS UI" mkdir -p /opt/zwave-js-ui mkdir -p /opt/zwave_store cd /opt/zwave-js-ui -RELEASE=$(curl -s https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip +RELEASE=$(curl -fsSL https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -O $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip") unzip -q zwave-js-ui-${RELEASE}-linux.zip cat </opt/.env ZWAVEJS_EXTERNAL_CONFIG=/opt/zwave_store/.config-db diff --git a/misc/add-lxc-iptag.sh b/misc/add-lxc-iptag.sh index e838f1df8..9706e6eb7 100644 --- a/misc/add-lxc-iptag.sh +++ b/misc/add-lxc-iptag.sh @@ -7,8 +7,8 @@ # Source: https://github.com/gitsang/lxc-iptag function header_info { -clear -cat <<"EOF" + clear + cat <<"EOF" __ _ ________ ________ ______ / / | |/ / ____/ / _/ __ \ /_ __/___ _____ _ / / | / / / // /_/ /_____/ / / __ `/ __ `/ @@ -60,9 +60,9 @@ spinner() { local color="${YWB}" while true; do - printf "\r ${color}%s${CL}" "${frames[spin_i]}" - spin_i=$(((spin_i + 1) % ${#frames[@]})) - sleep "$interval" + printf "\r ${color}%s${CL}" "${frames[spin_i]}" + spin_i=$(((spin_i + 1) % ${#frames[@]})) + sleep "$interval" done } @@ -95,9 +95,9 @@ while true; do case $yn in [Yy]*) break ;; [Nn]*) - msg_error "Installation cancelled." - exit - ;; + msg_error "Installation cancelled." + exit + ;; *) msg_error "Please answer yes or no." ;; esac done diff --git a/misc/add-netbird-lxc.sh b/misc/add-netbird-lxc.sh index d2e02bf26..430ea63a0 100644 --- a/misc/add-netbird-lxc.sh +++ b/misc/add-netbird-lxc.sh @@ -7,8 +7,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { -clear -cat <<"EOF" + clear + cat <<"EOF" _ __ __ ____ _ __ / | / /__ / /_/ __ )(_)________/ / / |/ / _ \/ __/ __ / / ___/ __ / @@ -80,7 +80,7 @@ header_info msg "Installing NetBird..." pct exec "$CTID" -- bash -c ' apt install -y ca-certificates gpg &>/dev/null -wget -qO- https://pkgs.netbird.io/debian/public.key | gpg --dearmor >/usr/share/keyrings/netbird-archive-keyring.gpg +curl -fsSL "https://pkgs.netbird.io/debian/public.key" | gpg --dearmor >/usr/share/keyrings/netbird-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/netbird-archive-keyring.gpg] https://pkgs.netbird.io/debian stable main" >/etc/apt/sources.list.d/netbird.list apt-get update &>/dev/null apt-get install -y netbird-ui &>/dev/null diff --git a/misc/add-tailscale-lxc.sh b/misc/add-tailscale-lxc.sh index 93f37b9cd..5183a5b4f 100644 --- a/misc/add-tailscale-lxc.sh +++ b/misc/add-tailscale-lxc.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { -clear -cat <<"EOF" + clear + cat <<"EOF" ______ _ __ __ /_ __/___ _(_) /_____________ _/ /__ / / / __ `/ / / ___/ ___/ __ `/ / _ \ @@ -62,7 +62,7 @@ msg "Installing Tailscale..." pct exec "$CTID" -- bash -c ' ID=$(grep "^ID=" /etc/os-release | cut -d"=" -f2) VER=$(grep "^VERSION_CODENAME=" /etc/os-release | cut -d"=" -f2) -wget -qO- https://pkgs.tailscale.com/stable/$ID/$VER.noarmor.gpg >/usr/share/keyrings/tailscale-archive-keyring.gpg +curl -fsSL https://pkgs.tailscale.com/stable/$ID/$VER.noarmor.gpg | tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/tailscale-archive-keyring.gpg] https://pkgs.tailscale.com/stable/$ID $VER main" >/etc/apt/sources.list.d/tailscale.list apt-get update &>/dev/null apt-get install -y tailscale &>/dev/null diff --git a/misc/alpine-install.func b/misc/alpine-install.func index 714ca12a7..ace59a9f8 100644 --- a/misc/alpine-install.func +++ b/misc/alpine-install.func @@ -194,6 +194,6 @@ customize() { msg_ok "Customized Container" fi - echo "bash -c \"\$(curl -fsSL https://github.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update + echo "bash -c \"\$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update chmod +x /usr/bin/update } diff --git a/misc/api.func b/misc/api.func index 00748d58b..4e77247c0 100644 --- a/misc/api.func +++ b/misc/api.func @@ -39,7 +39,7 @@ post_to_api() { EOF ) - RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ + RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ -H "Content-Type: application/json" \ -d "$JSON_PAYLOAD") || true } @@ -87,7 +87,7 @@ post_to_api_vm() { EOF ) - RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ + RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ -H "Content-Type: application/json" \ -d "$JSON_PAYLOAD") || true } @@ -115,7 +115,7 @@ post_update_to_api() { EOF ) - RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ + RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \ -H "Content-Type: application/json" \ -d "$JSON_PAYLOAD") || true diff --git a/misc/build.func b/misc/build.func index af23b09c0..d7341e225 100644 --- a/misc/build.func +++ b/misc/build.func @@ -14,7 +14,7 @@ variables() { RANDOM_UUID="$(cat /proc/sys/kernel/random/uuid)" # generates a random UUID and sets it to the RANDOM_UUID variable. } -source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) # This function sets various color variables using ANSI escape codes for formatting text in the terminal. color() { @@ -67,7 +67,7 @@ catch_errors() { # This function is called when an error occurs. It receives the exit code, line number, and command that caused the error, and displays an error message. error_handler() { - source /dev/stdin <<<$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) + source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local exit_code="$?" @@ -289,14 +289,14 @@ update_motd_ip() { # Function to download & save header files get_header() { local app_name=$(echo ${APP,,} | tr -d ' ') - local header_url="https://github.com/community-scripts/ProxmoxVE/raw/main/ct/headers/${app_name}" + local header_url="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/ct/headers/${app_name}" local local_header_path="/usr/local/community-scripts/headers/${app_name}" mkdir -p "/usr/local/community-scripts/headers" # Check if local file already present if [ ! -s "$local_header_path" ]; then - wget -qO "$local_header_path" "$header_url" + curl -fsSL "$header_url" -o "$local_header_path" if [ $? -ne 0 ]; then echo -e "${WARN}${BOLD}${YLW}Failed to download header for ${app_name}. No header will be displayed.${CL}" return 1 @@ -1097,9 +1097,9 @@ build_container() { TEMP_DIR=$(mktemp -d) pushd $TEMP_DIR >/dev/null if [ "$var_os" == "alpine" ]; then - export FUNCTIONS_FILE_PATH="$(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/alpine-install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/alpine-install.func)" else - export FUNCTIONS_FILE_PATH="$(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/install.func)" fi export RANDOM_UUID="$RANDOM_UUID" export CACHER="$APT_CACHER" @@ -1131,7 +1131,7 @@ build_container() { $PW " # This executes create_lxc.sh and creates the container and .conf file - bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/create_lxc.sh)" || exit $? + bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/create_lxc.sh)" || exit $? LXC_CONFIG=/etc/pve/lxc/${CTID}.conf if [ "$CT_TYPE" == "0" ]; then @@ -1193,7 +1193,7 @@ http://dl-cdn.alpinelinux.org/alpine/latest-stable/community EOF' pct exec "$CTID" -- ash -c "apk add bash >/dev/null" fi - lxc-attach -n "$CTID" -- bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/install/$var_install.sh)" || exit $? + lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/install/$var_install.sh)" || exit $? } diff --git a/misc/clean-lxcs.sh b/misc/clean-lxcs.sh index cabd3f033..42b0d2b49 100644 --- a/misc/clean-lxcs.sh +++ b/misc/clean-lxcs.sh @@ -33,14 +33,14 @@ while read -r TAG ITEM; do EXCLUDE_MENU+=("$TAG" "$ITEM " "OFF") done < <(pct list | awk 'NR>1') excluded_containers=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Containers on $NODE" --checklist "\nSelect containers to skip from cleaning:\n" \ - 16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit + 16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit function clean_container() { container=$1 header_info name=$(pct exec "$container" hostname) echo -e "${BL}[Info]${GN} Cleaning ${name} ${CL} \n" - pct exec $container -- bash -c "apt-get -y --purge autoremove && apt-get -y autoclean && bash <(curl -fsSL https://github.com/community-scripts/ProxmoxVE/raw/main/misc/clean.sh) && rm -rf /var/lib/apt/lists/* && apt-get update" + pct exec $container -- bash -c "apt-get -y --purge autoremove && apt-get -y autoclean && bash <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/clean.sh) && rm -rf /var/lib/apt/lists/* && apt-get update" } for container in $(pct list | awk '{if(NR>1) print $1}'); do if [[ " ${excluded_containers[@]} " =~ " $container " ]]; then diff --git a/misc/clean-orphaned-lvm.sh b/misc/clean-orphaned-lvm.sh index 533ef50ec..4f47d5a94 100644 --- a/misc/clean-orphaned-lvm.sh +++ b/misc/clean-orphaned-lvm.sh @@ -5,8 +5,8 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { - clear - cat <<"EOF" + clear + cat <<"EOF" ____ ________ ____ __ __ __ _ ____ ___ / __ \_________ _ ______ ___ ____ _ __ / ____/ /__ ____ _____ / __ \_________ / /_ ____ _____ ___ ____/ / / /| | / / |/ /____ / /_/ / ___/ __ \| |/_/ __ `__ \/ __ \| |/_/ / / / / _ \/ __ `/ __ \ / / / / ___/ __ \/ __ \/ __ `/ __ \/ _ \/ __ / / / | | / / /|_/ / ___/ @@ -38,19 +38,19 @@ function find_orphaned_lvm { echo -e "❗ The following orphaned LVM volumes were found:\n" printf "%-25s %-10s %-10s\n" "LV Name" "VG" "Size" printf "%-25s %-10s %-10s\n" "-------------------------" "----------" "----------" - - for ((i = 0; i < ${#orphaned_volumes[@]}; i+=3)); do - printf "%-25s %-10s %-10s\n" "${orphaned_volumes[i]}" "${orphaned_volumes[i+1]}" "${orphaned_volumes[i+2]}" + + for ((i = 0; i < ${#orphaned_volumes[@]}; i += 3)); do + printf "%-25s %-10s %-10s\n" "${orphaned_volumes[i]}" "${orphaned_volumes[i + 1]}" "${orphaned_volumes[i + 2]}" done echo "" } # Function to delete selected volumes function delete_orphaned_lvm { - for ((i = 0; i < ${#orphaned_volumes[@]}; i+=3)); do + for ((i = 0; i < ${#orphaned_volumes[@]}; i += 3)); do lv="${orphaned_volumes[i]}" - vg="${orphaned_volumes[i+1]}" - size="${orphaned_volumes[i+2]}" + vg="${orphaned_volumes[i + 1]}" + size="${orphaned_volumes[i + 2]}" read -p "❓ Do you want to delete $lv (VG: $vg, Size: $size)? [y/N]: " confirm if [[ "$confirm" =~ ^[Yy]$ ]]; then diff --git a/misc/code-server.sh b/misc/code-server.sh index 5114e3200..a24ed41de 100644 --- a/misc/code-server.sh +++ b/misc/code-server.sh @@ -46,8 +46,14 @@ function error_exit() { } clear header_info -if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Install on Proxmox "; exit; fi -if [ -e /etc/alpine-release ]; then echo -e "⚠️ Can't Install on Alpine"; exit; fi +if command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Can't Install on Proxmox " + exit +fi +if [ -e /etc/alpine-release ]; then + echo -e "⚠️ Can't Install on Alpine" + exit +fi while true; do read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn case $yn in @@ -73,7 +79,7 @@ apt-get install -y curl &>/dev/null apt-get install -y git &>/dev/null msg_ok "Installed Dependencies" -VERSION=$(curl -s https://api.github.com/repos/coder/code-server/releases/latest | +VERSION=$(curl -fsSL https://api.github.com/repos/coder/code-server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') diff --git a/misc/container-restore-from-backup.sh b/misc/container-restore-from-backup.sh index dd5da9453..d1a45c6a9 100644 --- a/misc/container-restore-from-backup.sh +++ b/misc/container-restore-from-backup.sh @@ -6,7 +6,10 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE clear -if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Run from the Proxmox Shell"; exit; fi +if command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Can't Run from the Proxmox Shell" + exit +fi YW=$(echo "\033[33m") BL=$(echo "\033[36m") RD=$(echo "\033[01;31m") diff --git a/misc/copy-data/README.md b/misc/copy-data/README.md index 3257c80f2..a7bdbf35c 100644 --- a/misc/copy-data/README.md +++ b/misc/copy-data/README.md @@ -2,45 +2,45 @@
To copy data from Home Assistant Container to Home Assistant Container
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh)" ```
To copy data from Home Assistant Container to Home Assistant Core
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh)" ```
To copy data from Home Assistant Container to Podman Home Assistant
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh)" ```
To copy data from Podman Home Assistant to Home Assistant Container
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh)" ```
To copy data from Home Assistant Core to Home Assistant Container
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh)" ```
To copy data from Home Assistant Core to Home Assistant Core
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh)" ```
To copy data from Plex to Plex
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/plex-copy-data-plex.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/plex-copy-data-plex.sh)" ```
To copy data from Zigbee2MQTT to Zigbee2MQTT
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/z2m-copy-data-z2m.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/z2m-copy-data-z2m.sh)" ```
To copy data from Zwavejs2MQTT to Zwave JS UI
``` -bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh)" +bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh)" ``` diff --git a/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh b/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh index a8c137afb..a332fdf98 100644 --- a/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh +++ b/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh @@ -8,7 +8,10 @@ # Use to copy all data from one Home Assistant LXC to another # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from one Home Assistant LXC to another. Proceed(y/n)?" yn case $yn in @@ -125,4 +128,4 @@ info "Successfully Transferred Data." # Use to copy all data from one Home Assistant LXC to another # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-container.sh)" diff --git a/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh b/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh index 998bcb63a..24e08d755 100644 --- a/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh +++ b/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh @@ -6,7 +6,10 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Home Assistant Container LXC to a Home Assistant Core LXC. Proceed(y/n)?" yn case $yn in @@ -121,4 +124,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Home Assistant Container LXC to a Home Assistant Core LXC # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-home-assistant-core.sh)" diff --git a/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh b/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh index e730372d2..16300af5d 100644 --- a/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh +++ b/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh @@ -8,7 +8,10 @@ # Use to copy all data from a Home Assistant LXC to a Podman Home Assistant LXC. # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Home Assistant LXC to a Podman Home Assistant LXC. Proceed(y/n)?" yn case $yn in @@ -126,4 +129,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Home Assistant LXC to a Podman Home Assistant LXC # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-container-copy-data-podman-home-assistant.sh)" diff --git a/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh b/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh index dc9eecd7a..607186589 100644 --- a/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh +++ b/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh @@ -6,7 +6,10 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Home Assistant Core LXC to a Home Assistant Container LXC. Proceed(y/n)?" yn case $yn in @@ -121,4 +124,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Home Assistant Core LXC to a Home Assistant Container LXC # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-container.sh)" diff --git a/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh b/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh index a8d364085..21a1fb4e3 100644 --- a/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh +++ b/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh @@ -6,7 +6,10 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Home Assistant Core LXC to a Home Assistant Core LXC. Proceed(y/n)?" yn case $yn in @@ -120,4 +123,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Home Assistant Core LXC to a Home Assistant Container LXC # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/home-assistant-core-copy-data-home-assistant-core.sh)" diff --git a/misc/copy-data/plex-copy-data-plex.sh b/misc/copy-data/plex-copy-data-plex.sh index 779921f89..c4ec2425a 100644 --- a/misc/copy-data/plex-copy-data-plex.sh +++ b/misc/copy-data/plex-copy-data-plex.sh @@ -8,7 +8,10 @@ # Use to copy all data from one Plex Media Server LXC to another # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from one Plex Media Server LXC to another. Proceed(y/n)?" yn case $yn in @@ -125,4 +128,4 @@ info "Successfully Transferred Data." # Use to copy all data from one Plex Media Server LXC to another # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/plex-copy-data-plex.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/plex-copy-data-plex.sh)" diff --git a/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh b/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh index 0ff1f071f..091f3dc20 100644 --- a/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh +++ b/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh @@ -8,7 +8,10 @@ # Use to copy all data from a Podman Home Assistant LXC to a Docker Home Assistant LXC. # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Podman Home Assistant LXC to a Docker Home Assistant LXC. Proceed(y/n)?" yn case $yn in @@ -126,4 +129,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Podman Home Assistant LXC to a Docker Home Assistant LXC. # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/podman-home-assistant-copy-data-home-assistant-container.sh)" diff --git a/misc/copy-data/z2m-copy-data-z2m.sh b/misc/copy-data/z2m-copy-data-z2m.sh index b6807351a..799c248d5 100644 --- a/misc/copy-data/z2m-copy-data-z2m.sh +++ b/misc/copy-data/z2m-copy-data-z2m.sh @@ -8,7 +8,10 @@ # Use to copy all data from one Zigbee2MQTT LXC to another # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from one Zigbee2MQTT LXC to another. Proceed(y/n)?" yn case $yn in @@ -125,4 +128,4 @@ info "Successfully Transferred Data." # Use to copy all data from one Zigbee2MQTT LXC to another # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/z2m-copy-data-z2m.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/z2m-copy-data-z2m.sh)" diff --git a/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh b/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh index 3f282e250..5f3c7ffd2 100644 --- a/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh +++ b/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh @@ -8,7 +8,10 @@ # Use to copy all data from a Zwavejs2MQTT LXC to a Z-wave JS UI LXC # run from the Proxmox Shell clear -if ! command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Run from the Proxmox Shell"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Run from the Proxmox Shell" + exit +fi while true; do read -p "Use to copy all data from a Zwavejs2MQTT LXC to a Z-wave JS UI LXC. Proceed(y/n)?" yn case $yn in @@ -127,4 +130,4 @@ info "Successfully Transferred Data." # Use to copy all data from a Zwavejs2MQTT LXC to a Z-wave JS UI LXC # run from the Proxmox Shell -# bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/copy-data/zwavejs2mqtt-copy-data-zwavejsui.sh)" diff --git a/misc/core-restore-from-backup.sh b/misc/core-restore-from-backup.sh index 021e6b05a..bdff8dd4c 100644 --- a/misc/core-restore-from-backup.sh +++ b/misc/core-restore-from-backup.sh @@ -6,7 +6,10 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE clear -if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Run from the Proxmox Shell"; exit; fi +if command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Can't Run from the Proxmox Shell" + exit +fi YW=$(echo "\033[33m") BL=$(echo "\033[36m") RD=$(echo "\033[01;31m") diff --git a/misc/cron-update-lxcs.sh b/misc/cron-update-lxcs.sh index b83111fed..419cf477a 100644 --- a/misc/cron-update-lxcs.sh +++ b/misc/cron-update-lxcs.sh @@ -4,7 +4,7 @@ # Author: tteck (tteckster) # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/cron-update-lxcs.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/cron-update-lxcs.sh)" clear cat <<"EOF" @@ -25,7 +25,7 @@ add() { *) echo "Please answer yes or no." ;; esac done - sh -c '(crontab -l -u root 2>/dev/null; echo "0 0 * * 0 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /bin/bash -c \"\$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/update-lxcs-cron.sh)\" >>/var/log/update-lxcs-cron.log 2>/dev/null") | crontab -u root -' + sh -c '(crontab -l -u root 2>/dev/null; echo "0 0 * * 0 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /bin/bash -c \"\$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/update-lxcs-cron.sh)\" >>/var/log/update-lxcs-cron.log 2>/dev/null") | crontab -u root -' clear echo -e "\n To view Cron Update LXCs logs: cat /var/log/update-lxcs-cron.log" } diff --git a/misc/crowdsec.sh b/misc/crowdsec.sh index eae6fc967..835a7dd92 100644 --- a/misc/crowdsec.sh +++ b/misc/crowdsec.sh @@ -33,7 +33,10 @@ function error_exit() { echo -e "$flag $msg" 1>&2 exit $EXIT } -if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Install on Proxmox "; exit; fi +if command -v pveversion >/dev/null 2>&1; then + echo -e "⚠️ Can't Install on Proxmox " + exit +fi while true; do read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn case $yn in @@ -70,7 +73,7 @@ msg_info "Setting up ${APP} Repository" apt-get update &>/dev/null apt-get install -y curl &>/dev/null apt-get install -y gnupg &>/dev/null -curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | bash &>/dev/null +curl -fsSL https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | bash &>/dev/null msg_ok "Setup ${APP} Repository" msg_info "Installing ${APP}" diff --git a/misc/filebrowser.sh b/misc/filebrowser.sh index 479831c17..714175e53 100644 --- a/misc/filebrowser.sh +++ b/misc/filebrowser.sh @@ -36,7 +36,6 @@ IP=$(ip -4 addr show "$IFACE" | awk '/inet / {print $2}' | cut -d/ -f1 | head -n [[ -z "$IP" ]] && IP=$(hostname -I | awk '{print $1}') [[ -z "$IP" ]] && IP="127.0.0.1" - # Detect OS if [[ -f "/etc/alpine-release" ]]; then OS="Alpine" @@ -89,7 +88,7 @@ if [ -f "$INSTALL_PATH" ]; then read -r -p "Would you like to update ${APP}? (y/N): " update_prompt if [[ "${update_prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Updating ${APP}" - wget -qO- https://github.com/filebrowser/filebrowser/releases/latest/download/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null + curl -fsSL "https://github.com/filebrowser/filebrowser/releases/latest/download/linux-amd64-filebrowser.tar.gz" | tar -xzv -C /usr/local/bin &>/dev/null chmod +x "$INSTALL_PATH" msg_ok "Updated ${APP}" exit 0 @@ -107,7 +106,7 @@ read -r -p "Would you like to install ${APP}? (y/n): " install_prompt if [[ "${install_prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Installing ${APP} on ${OS}" $PKG_MANAGER wget tar curl &>/dev/null - wget -qO- https://github.com/filebrowser/filebrowser/releases/latest/download/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null + curl -fsSL "https://github.com/filebrowser/filebrowser/releases/latest/download/linux-amd64-filebrowser.tar.gz" | tar -xzv -C /usr/local/bin &>/dev/null chmod +x "$INSTALL_PATH" msg_ok "Installed ${APP}" @@ -115,9 +114,9 @@ if [[ "${install_prompt,,}" =~ ^(y|yes)$ ]]; then mkdir -p /usr/local/community-scripts chown root:root /usr/local/community-scripts chmod 755 /usr/local/community-scripts - touch "$DB_PATH" - chown root:root "$DB_PATH" - chmod 644 "$DB_PATH" + touch "$DB_PATH" + chown root:root "$DB_PATH" + chmod 644 "$DB_PATH" msg_ok "Directory created successfully" read -r -p "Would you like to use No Authentication? (y/N): " auth_prompt @@ -141,7 +140,7 @@ if [[ "${install_prompt,,}" =~ ^(y|yes)$ ]]; then msg_info "Creating service" if [[ "$OS" == "Debian" ]]; then - cat < "$SERVICE_PATH" + cat <"$SERVICE_PATH" [Unit] Description=Filebrowser After=network-online.target @@ -159,7 +158,7 @@ WantedBy=multi-user.target EOF systemctl enable -q --now filebrowser else - cat < "$SERVICE_PATH" + cat <"$SERVICE_PATH" #!/sbin/openrc-run command="/usr/local/bin/filebrowser" diff --git a/misc/frigate-support.sh b/misc/frigate-support.sh index 11e14e7a7..2ca7691ba 100644 --- a/misc/frigate-support.sh +++ b/misc/frigate-support.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { - clear -cat <<"EOF" + clear + cat <<"EOF" ____ _ __ ____ __ / __/___(_)__ ____ _/ /____ / __/_ _____ ___ ___ ____/ /_ / _// __/ / _ `/ _ `/ __/ -_) _\ \/ // / _ \/ _ \/ _ \/ __/ __/ @@ -28,11 +28,11 @@ header_info # The array of device types # CHAR_DEVS+=(major:minor) -CHAR_DEVS+=("1:1") # mem -CHAR_DEVS+=("29:0") # fb0 -CHAR_DEVS+=("188:.*") # ttyUSB* -CHAR_DEVS+=("189:.*") # bus/usb/* -CHAR_DEVS+=("226:0") # card0 +CHAR_DEVS+=("1:1") # mem +CHAR_DEVS+=("29:0") # fb0 +CHAR_DEVS+=("188:.*") # ttyUSB* +CHAR_DEVS+=("189:.*") # bus/usb/* +CHAR_DEVS+=("226:0") # card0 CHAR_DEVS+=("226:128") # renderD128 # Proccess char device string @@ -89,5 +89,5 @@ EOF echo -e "\e[1;33m \nFinished....Reboot ${CTID} LXC to apply the changes.\n \e[0m" # In the Proxmox web shell run -# bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/frigate-support.sh)" -# Reboot the LXC to apply the changes \ No newline at end of file +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/frigate-support.sh)" +# Reboot the LXC to apply the changes diff --git a/misc/fstrim.sh b/misc/fstrim.sh index b155ef4ae..1e8fe3ffa 100644 --- a/misc/fstrim.sh +++ b/misc/fstrim.sh @@ -29,12 +29,12 @@ echo "Loading..." ROOT_FS=$(df -Th "/" | awk 'NR==2 {print $2}') if [ "$ROOT_FS" != "ext4" ]; then - echo "Root filesystem is not ext4. Exiting script." - exit 1 + echo "Root filesystem is not ext4. Exiting script." + exit 1 fi whiptail --backtitle "Proxmox VE Helper Scripts" \ - --title "Proxmox VE LXC Filesystem Trim" \ - --yesno "The LXC containers will undergo the fstrim command. Proceed?" 10 58 || exit + --title "Proxmox VE LXC Filesystem Trim" \ + --yesno "The LXC containers will undergo the fstrim command. Proceed?" 10 58 || exit NODE=$(hostname) EXCLUDE_MENU=() @@ -47,12 +47,12 @@ while read -r TAG ITEM; do done < <(pct list | awk 'NR>1') excluded_containers_raw=$(whiptail --backtitle "Proxmox VE Helper Scripts" \ - --title "Containers on $NODE" \ - --checklist "\nSelect containers to skip from trimming:\n" \ - 16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3) + --title "Containers on $NODE" \ + --checklist "\nSelect containers to skip from trimming:\n" \ + 16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3) if [ $? -ne 0 ]; then - exit + exit fi excluded_containers=$(echo "$excluded_containers_raw" | tr -d '"') @@ -61,17 +61,17 @@ function trim_container() { local container=$1 header_info echo -e "${BL}[Info]${GN} Trimming ${BL}$container${CL} \n" - + local before_trim before_trim=$(lvs | awk -F '[[:space:]]+' 'NR>1 && (/Data%|'"vm-$container"'/) {gsub(/%/, "", $7); print $7}') echo -e "${RD}Data before trim $before_trim%${CL}" - + pct fstrim "$container" - + local after_trim after_trim=$(lvs | awk -F '[[:space:]]+' 'NR>1 && (/Data%|'"vm-$container"'/) {gsub(/%/, "", $7); print $7}') echo -e "${GN}Data after trim $after_trim%${CL}" - + sleep 1.5 } diff --git a/misc/glances.sh b/misc/glances.sh index cd49dcb33..90012a9df 100644 --- a/misc/glances.sh +++ b/misc/glances.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { - clear - cat <<"EOF" + clear + cat <<"EOF" ________ / ____/ /___ _____ ________ _____ / / __/ / __ `/ __ \/ ___/ _ \/ ___/ @@ -32,13 +32,13 @@ hostname="$(hostname)" silent() { "$@" >/dev/null 2>&1; } set -e spinner() { - local chars="/-\|" - local spin_i=0 - printf "\e[?25l" - while true; do - printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}" - sleep 0.1 - done + local chars="/-\|" + local spin_i=0 + printf "\e[?25l" + while true; do + printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}" + sleep 0.1 + done } msg_info() { @@ -49,7 +49,7 @@ msg_info() { } msg_ok() { - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local msg="$1" echo -e "${BFR} ${CM} ${GN}${msg}${CL}" @@ -58,23 +58,23 @@ msg_ok() { install() { header_info while true; do - read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn - case $yn in - [Yy]*) break ;; - [Nn]*) exit ;; - *) echo "Please answer yes or no." ;; - esac + read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn + case $yn in + [Yy]*) break ;; + [Nn]*) exit ;; + *) echo "Please answer yes or no." ;; + esac done header_info read -r -p "Verbose mode? " prompt if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then - STD="" + STD="" else - STD="silent" + STD="silent" fi msg_info "Installing $APP" rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED - $STD bash -c "$(wget -qLO - https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh)" + $STD bash -c "$(curl -fsSL https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh)" cat </etc/systemd/system/glances.service [Unit] Description=Glances - An eye on your system @@ -97,29 +97,29 @@ EOF uninstall() { header_info msg_info "Uninstalling $APP" - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi systemctl disable -q --now glances - bash -c "$(wget -qLO - https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/uninstall.sh)" + bash -c "$(curl -fsSL https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/uninstall.sh)" rm -rf /etc/systemd/system/glances.service msg_ok "Uninstalled $APP" msg_ok "Completed Successfully!\n" } -OPTIONS=(Install "Install $APP" \ - Uninstall "Uninstall $APP") +OPTIONS=(Install "Install $APP" + Uninstall "Uninstall $APP") CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "$APP" --menu "Select an option:" 10 58 2 \ - "${OPTIONS[@]}" 3>&1 1>&2 2>&3) + "${OPTIONS[@]}" 3>&1 1>&2 2>&3) case $CHOICE in - "Install") - install - ;; - "Uninstall") - uninstall - ;; - *) - echo "Exiting..." - exit 0 - ;; +"Install") + install + ;; +"Uninstall") + uninstall + ;; +*) + echo "Exiting..." + exit 0 + ;; esac diff --git a/misc/hw-acceleration.sh b/misc/hw-acceleration.sh index b632afb34..7370b078f 100644 --- a/misc/hw-acceleration.sh +++ b/misc/hw-acceleration.sh @@ -5,7 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Execute within the Proxmox shell -# bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/misc/hw-acceleration.sh)" +# bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/misc/hw-acceleration.sh)" set -e function header_info { @@ -56,8 +56,8 @@ MSG_MAX_LENGTH=0 privileged_containers=$(pct list | awk 'NR>1 && system("grep -q \047unprivileged: 1\047 /etc/pve/lxc/" $1 ".conf")') if [ -z "$privileged_containers" ]; then - whiptail --msgbox "No Privileged Containers Found." 10 58 - exit + whiptail --msgbox "No Privileged Containers Found." 10 58 + exit fi while read -r TAG ITEM; do @@ -69,11 +69,11 @@ done < <(echo "$privileged_containers") privileged_container=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Privileged Containers on $NODE" --checklist "\nSelect a Container To Add Intel HW Acceleration:\n" 16 $((MSG_MAX_LENGTH + 23)) 6 "${PREV_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit header_info read -r -p "Verbose mode? " prompt - if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then +if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then STD="" - else +else STD="silent" - fi +fi header_info cat <>/etc/pve/lxc/${privileged_container}.conf diff --git a/misc/install.func b/misc/install.func index d952c7480..85b2f489f 100644 --- a/misc/install.func +++ b/misc/install.func @@ -68,7 +68,7 @@ catch_errors() { # This function handles errors error_handler() { - source <(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) + source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local exit_code="$?" @@ -265,7 +265,7 @@ EOF systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') msg_ok "Customized Container" fi - echo "bash -c \"\$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update + echo "bash -c \"\$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update chmod +x /usr/bin/update if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then diff --git a/misc/kernel-clean.sh b/misc/kernel-clean.sh index 959318bdb..9efe71e61 100644 --- a/misc/kernel-clean.sh +++ b/misc/kernel-clean.sh @@ -40,7 +40,7 @@ echo -e "\n${YW}Select kernels to remove (comma-separated, e.g., 1,2):${CL}" read -r selected # Parse selection -IFS=',' read -r -a selected_indices <<< "$selected" +IFS=',' read -r -a selected_indices <<<"$selected" kernels_to_remove=() for index in "${selected_indices[@]}"; do diff --git a/misc/kernel-pin.sh b/misc/kernel-pin.sh index 5450b71ef..4ba86ae12 100644 --- a/misc/kernel-pin.sh +++ b/misc/kernel-pin.sh @@ -39,8 +39,8 @@ function msg_ok() { whiptail --backtitle "Proxmox VE Helper Scripts" --title "Proxmox VE Kernel Pin" --yesno "This will Pin/Unpin Kernel Images, Proceed?" 10 68 || exit - KERNEL_MENU=() - MSG_MAX_LENGTH=0 +KERNEL_MENU=() +MSG_MAX_LENGTH=0 while read -r TAG ITEM; do OFFSET=2 ((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=${#ITEM}+OFFSET diff --git a/misc/lxc-delete.sh b/misc/lxc-delete.sh index df9685de0..99a7e0871 100644 --- a/misc/lxc-delete.sh +++ b/misc/lxc-delete.sh @@ -5,8 +5,8 @@ # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { - clear - cat <<"EOF" + clear + cat <<"EOF" ____ __ _ ________ ____ __ __ / __ \_________ _ ______ ___ ____ _ __ / / | |/ / ____/ / __ \___ / /__ / /____ / /_/ / ___/ __ \| |/_/ __ `__ \/ __ \| |/_/ / / | / / / / / / _ \/ / _ \/ __/ _ \ @@ -20,7 +20,7 @@ spinner() { local pid=$1 local delay=0.1 local spinstr='|/-\' - while ps -p $pid > /dev/null; do + while ps -p $pid >/dev/null; do printf " [%c] " "$spinstr" spinstr=${spinstr#?}${spinstr%"${spinstr#?}"} sleep $delay @@ -59,15 +59,15 @@ while read -r container; do container_status=$(echo $container | awk '{print $3}') formatted_line=$(printf "$FORMAT" "$container_name" "$container_status") menu_items+=("$container_id" "$formatted_line" "OFF") -done <<< "$containers" +done <<<"$containers" CHOICES=$(whiptail --title "LXC Container Delete" \ - --checklist "Select LXC containers to delete:" 25 60 13 \ - "${menu_items[@]}" 3>&2 2>&1 1>&3) + --checklist "Select LXC containers to delete:" 25 60 13 \ + "${menu_items[@]}" 3>&2 2>&1 1>&3) if [ -z "$CHOICES" ]; then whiptail --title "LXC Container Delete" \ - --msgbox "No containers selected!" 10 60 + --msgbox "No containers selected!" 10 60 exit 1 fi diff --git a/misc/microcode.sh b/misc/microcode.sh index b5ce7aa71..9d6c09efa 100644 --- a/misc/microcode.sh +++ b/misc/microcode.sh @@ -44,23 +44,35 @@ intel() { fi intel_microcode=$(curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode//" | grep -o 'href="[^"]*amd64.deb"' | sed 's/href="//;s/"//') - [ -z "$intel_microcode" ] && { whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Found" --msgbox "It appears there were no microcode packages found\n Try again later." 10 68; msg_info "Exiting"; sleep 1; msg_ok "Done"; exit; } + [ -z "$intel_microcode" ] && { + whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Found" --msgbox "It appears there were no microcode packages found\n Try again later." 10 68 + msg_info "Exiting" + sleep 1 + msg_ok "Done" + exit + } MICROCODE_MENU=() MSG_MAX_LENGTH=0 while read -r TAG ITEM; do OFFSET=2 - (( ${#ITEM} + OFFSET > MSG_MAX_LENGTH )) && MSG_MAX_LENGTH=${#ITEM}+OFFSET + ((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=${#ITEM}+OFFSET MICROCODE_MENU+=("$TAG" "$ITEM " "OFF") done < <(echo "$intel_microcode") microcode=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Current Microcode revision:${current_microcode}" --radiolist "\nSelect a microcode package to install:\n" 16 $((MSG_MAX_LENGTH + 58)) 6 "${MICROCODE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit - [ -z "$microcode" ] && { whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Selected" --msgbox "It appears that no microcode packages were selected" 10 68; msg_info "Exiting"; sleep 1; msg_ok "Done"; exit; } + [ -z "$microcode" ] && { + whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Selected" --msgbox "It appears that no microcode packages were selected" 10 68 + msg_info "Exiting" + sleep 1 + msg_ok "Done" + exit + } msg_info "Downloading the Intel Processor Microcode Package $microcode" - wget -q http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode + curl -fsSL "http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode" -O $(basename "http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode") msg_ok "Downloaded the Intel Processor Microcode Package $microcode" msg_info "Installing $microcode (Patience)" @@ -76,23 +88,35 @@ intel() { amd() { amd_microcode=$(curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode///" | grep -o 'href="[^"]*amd64.deb"' | sed 's/href="//;s/"//') - [ -z "$amd_microcode" ] && { whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Found" --msgbox "It appears there were no microcode packages found\n Try again later." 10 68; msg_info "Exiting"; sleep 1; msg_ok "Done"; exit; } + [ -z "$amd_microcode" ] && { + whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Found" --msgbox "It appears there were no microcode packages found\n Try again later." 10 68 + msg_info "Exiting" + sleep 1 + msg_ok "Done" + exit + } MICROCODE_MENU=() MSG_MAX_LENGTH=0 while read -r TAG ITEM; do OFFSET=2 - (( ${#ITEM} + OFFSET > MSG_MAX_LENGTH )) && MSG_MAX_LENGTH=${#ITEM}+OFFSET + ((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=${#ITEM}+OFFSET MICROCODE_MENU+=("$TAG" "$ITEM " "OFF") done < <(echo "$amd_microcode") microcode=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Current Microcode revision:${current_microcode}" --radiolist "\nSelect a microcode package to install:\n" 16 $((MSG_MAX_LENGTH + 58)) 6 "${MICROCODE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit - [ -z "$microcode" ] && { whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Selected" --msgbox "It appears that no microcode packages were selected" 10 68; msg_info "Exiting"; sleep 1; msg_ok "Done"; exit; } + [ -z "$microcode" ] && { + whiptail --backtitle "Proxmox VE Helper Scripts" --title "No Microcode Selected" --msgbox "It appears that no microcode packages were selected" 10 68 + msg_info "Exiting" + sleep 1 + msg_ok "Done" + exit + } msg_info "Downloading the AMD Processor Microcode Package $microcode" - wget -q https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode + curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode" -O $(basename "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode") msg_ok "Downloaded the AMD Processor Microcode Package $microcode" msg_info "Installing $microcode (Patience)" @@ -105,7 +129,11 @@ amd() { echo -e "\nIn order to apply the changes, a system reboot will be necessary.\n" } -if ! command -v pveversion >/dev/null 2>&1; then header_info; msg_error "No PVE Detected!"; exit; fi +if ! command -v pveversion >/dev/null 2>&1; then + header_info + msg_error "No PVE Detected!" + exit +fi whiptail --backtitle "Proxmox VE Helper Scripts" --title "Proxmox VE Processor Microcode" --yesno "This will check for CPU microcode packages with the option to install. Proceed?" 10 58 || exit diff --git a/misc/monitor-all.sh b/misc/monitor-all.sh index 3d6103f5e..b0f95786a 100644 --- a/misc/monitor-all.sh +++ b/misc/monitor-all.sh @@ -16,16 +16,16 @@ cat <<"EOF" EOF add() { -while true; do - read -p "This script will add Monitor All to Proxmox VE. Proceed(y/n)?" yn - case $yn in - [Yy]*) break ;; - [Nn]*) exit ;; - *) echo "Please answer yes or no." ;; - esac -done + while true; do + read -p "This script will add Monitor All to Proxmox VE. Proceed(y/n)?" yn + case $yn in + [Yy]*) break ;; + [Nn]*) exit ;; + *) echo "Please answer yes or no." ;; + esac + done -echo '#!/usr/bin/env bash + echo '#!/usr/bin/env bash # Read excluded instances from command line arguments excluded_instances=("$@") echo "Excluded instances: ${excluded_instances[@]}" @@ -89,10 +89,10 @@ while true; do echo "$(date): Pausing for 5 minutes..." sleep 300 done >/var/log/ping-instances.log 2>&1' >/usr/local/bin/ping-instances.sh -touch /var/log/ping-instances.log -# Change file permissions to executable -chmod +x /usr/local/bin/ping-instances.sh -cat </etc/systemd/system/ping-instances.timer + touch /var/log/ping-instances.log + # Change file permissions to executable + chmod +x /usr/local/bin/ping-instances.sh + cat </etc/systemd/system/ping-instances.timer [Unit] Description=Delay ping-instances.service by 5 minutes @@ -104,8 +104,8 @@ OnUnitActiveSec=300 WantedBy=timers.target EOF -# Create ping-instances.service -cat </etc/systemd/system/ping-instances.service + # Create ping-instances.service + cat </etc/systemd/system/ping-instances.service [Unit] Description=Ping instances every 5 minutes and restarts if necessary After=ping-instances.timer @@ -125,12 +125,12 @@ StandardError=file:/var/log/ping-instances.log WantedBy=multi-user.target EOF -# Reload daemon, enable and start ping-instances.service -systemctl daemon-reload -systemctl enable -q --now ping-instances.timer -systemctl enable -q --now ping-instances.service -clear -echo -e "\n To view Monitor All logs: cat /var/log/ping-instances.log" + # Reload daemon, enable and start ping-instances.service + systemctl daemon-reload + systemctl enable -q --now ping-instances.timer + systemctl enable -q --now ping-instances.service + clear + echo -e "\n To view Monitor All logs: cat /var/log/ping-instances.log" } remove() { @@ -141,23 +141,23 @@ remove() { } # Define options for the whiptail menu -OPTIONS=(Add "Add Monitor-All to Proxmox VE" \ - Remove "Remove Monitor-All from Proxmox VE") +OPTIONS=(Add "Add Monitor-All to Proxmox VE" + Remove "Remove Monitor-All from Proxmox VE") # Show the whiptail menu and save the user's choice CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Monitor-All for Proxmox VE" --menu "Select an option:" 10 58 2 \ - "${OPTIONS[@]}" 3>&1 1>&2 2>&3) + "${OPTIONS[@]}" 3>&1 1>&2 2>&3) # Check the user's choice and perform the corresponding action case $CHOICE in - "Add") - add - ;; - "Remove") - remove - ;; - *) - echo "Exiting..." - exit 0 - ;; +"Add") + add + ;; +"Remove") + remove + ;; +*) + echo "Exiting..." + exit 0 + ;; esac diff --git a/misc/netdata.sh b/misc/netdata.sh index 67381a2d0..87c272d58 100644 --- a/misc/netdata.sh +++ b/misc/netdata.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { - clear - cat <<"EOF" + clear + cat <<"EOF" _ __ __ ____ __ / | / /__ / /_/ __ \____ _/ /_____ _ / |/ / _ \/ __/ / / / __ `/ __/ __ `/ @@ -52,15 +52,15 @@ install() { header_info read -r -p "Verbose mode? " prompt if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then - STD="" + STD="" else - STD="silent" + STD="silent" fi header_info msg_info "Setting up repository" $STD apt-get install -y debian-keyring - wget -q https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_5-1+debian12_all.deb + curl -fsSL "https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_5-1+debian12_all.deb" -O $(basename "https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_5-1+debian12_all.deb") $STD dpkg -i netdata-repo_5-1+debian12_all.deb rm -rf netdata-repo_5-1+debian12_all.deb msg_ok "Set up repository" @@ -77,9 +77,9 @@ uninstall() { header_info read -r -p "Verbose mode? " prompt if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then - STD="" + STD="" else - STD="silent" + STD="silent" fi header_info @@ -103,21 +103,21 @@ if ! pveversion | grep -Eq "pve-manager/(8\.[0-9])"; then exit fi -OPTIONS=(Install "Install NetData on Proxmox VE" \ - Uninstall "Uninstall NetData from Proxmox VE") +OPTIONS=(Install "Install NetData on Proxmox VE" + Uninstall "Uninstall NetData from Proxmox VE") CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "NetData" --menu "Select an option:" 10 58 2 \ - "${OPTIONS[@]}" 3>&1 1>&2 2>&3) + "${OPTIONS[@]}" 3>&1 1>&2 2>&3) case $CHOICE in - "Install") - install - ;; - "Uninstall") - uninstall - ;; - *) - echo "Exiting..." - exit 0 - ;; +"Install") + install + ;; +"Uninstall") + uninstall + ;; +*) + echo "Exiting..." + exit 0 + ;; esac diff --git a/misc/olivetin.sh b/misc/olivetin.sh index e35e78df1..b9cd40e26 100644 --- a/misc/olivetin.sh +++ b/misc/olivetin.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE function header_info { -clear -cat <<"EOF" + clear + cat <<"EOF" ____ ___ _______ / __ \/ (_) _____/_ __(_)___ / / / / / / | / / _ \/ / / / __ \ @@ -31,12 +31,12 @@ set-e header_info while true; do - read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn - case $yn in - [Yy]*) break ;; - [Nn]*) exit ;; - *) echo "Please answer yes or no." ;; - esac + read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn + case $yn in + [Yy]*) break ;; + [Nn]*) exit ;; + *) echo "Please answer yes or no." ;; + esac done header_info @@ -51,7 +51,7 @@ function msg_ok() { } msg_info "Installing ${APP}" -wget -q https://github.com/OliveTin/OliveTin/releases/latest/download/OliveTin_linux_amd64.deb +curl -fsSL "https://github.com/OliveTin/OliveTin/releases/latest/download/OliveTin_linux_amd64.deb" -O $(basename "https://github.com/OliveTin/OliveTin/releases/latest/download/OliveTin_linux_amd64.deb") dpkg -i OliveTin_linux_amd64.deb &>/dev/null systemctl enable --now OliveTin &>/dev/null rm OliveTin_linux_amd64.deb diff --git a/misc/pbs3-upgrade.sh b/misc/pbs3-upgrade.sh index 465ba8fb1..502be4bfe 100644 --- a/misc/pbs3-upgrade.sh +++ b/misc/pbs3-upgrade.sh @@ -44,7 +44,6 @@ msg_error() { echo -e "${BFR} ${CROSS} ${RD}${msg}${CL}" } - start_routines() { header_info CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PBS 2 BACKUP" --menu "\nMake a backup of /etc/proxmox-backup to ensure that in the worst case, any relevant configuration can be recovered?" 14 58 2 \ @@ -164,7 +163,10 @@ while true; do read -p "Start the Update to Proxmox Backup Server 3 Script (y/n)?" yn case $yn in [Yy]*) break ;; - [Nn]*) clear; exit ;; + [Nn]*) + clear + exit + ;; *) echo "Please answer yes or no." ;; esac done diff --git a/misc/pbs_microcode.sh b/misc/pbs_microcode.sh index f3b88fde8..88ca95867 100644 --- a/misc/pbs_microcode.sh +++ b/misc/pbs_microcode.sh @@ -39,8 +39,8 @@ header_info # Check if running on bare metal using systemd-detect-virt. virt=$(systemd-detect-virt) if [ "$virt" != "none" ]; then - msg_error "This script must be run on bare metal. Detected virtual environment: $virt" - exit 1 + msg_error "This script must be run on bare metal. Detected virtual environment: $virt" + exit 1 fi # Attempt to obtain the current loaded microcode revision @@ -58,7 +58,7 @@ intel() { fi intel_microcode=$(curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/" | grep -o 'href="[^"]*amd64.deb"' | sed 's/href="//;s/"//') - [ -z "$intel_microcode" ] && { + [ -z "$intel_microcode" ] && { whiptail --backtitle "Proxmox Backup Server Helper Scripts" --title "No Microcode Found" --msgbox "No microcode packages were found.\nTry again later." 10 68 msg_info "Exiting" sleep 1 @@ -71,7 +71,7 @@ intel() { while read -r TAG ITEM; do OFFSET=2 - (( ${#ITEM} + OFFSET > MSG_MAX_LENGTH )) && MSG_MAX_LENGTH=$(( ${#ITEM} + OFFSET )) + ((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=$((${#ITEM} + OFFSET)) MICROCODE_MENU+=("$TAG" "$ITEM " "OFF") done < <(echo "$intel_microcode") @@ -80,7 +80,7 @@ intel() { --radiolist "\nSelect a microcode package to install:\n" \ 16 $((MSG_MAX_LENGTH + 58)) 6 "${MICROCODE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit - [ -z "$microcode" ] && { + [ -z "$microcode" ] && { whiptail --backtitle "Proxmox Backup Server Helper Scripts" --title "No Microcode Selected" --msgbox "No microcode package was selected." 10 68 msg_info "Exiting" sleep 1 @@ -89,7 +89,7 @@ intel() { } msg_info "Downloading Intel processor microcode package $microcode" - wget -q http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode + curl -fsSL "http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode" -O $(basename "http://ftp.debian.org/debian/pool/non-free-firmware/i/intel-microcode/$microcode") msg_ok "Downloaded Intel processor microcode package $microcode" msg_info "Installing $microcode (this might take a while)" @@ -105,7 +105,7 @@ intel() { amd() { amd_microcode=$(curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/" | grep -o 'href="[^"]*amd64.deb"' | sed 's/href="//;s/"//') - [ -z "$amd_microcode" ] && { + [ -z "$amd_microcode" ] && { whiptail --backtitle "Proxmox Backup Server Helper Scripts" --title "No Microcode Found" --msgbox "No microcode packages were found.\nTry again later." 10 68 msg_info "Exiting" sleep 1 @@ -118,7 +118,7 @@ amd() { while read -r TAG ITEM; do OFFSET=2 - (( ${#ITEM} + OFFSET > MSG_MAX_LENGTH )) && MSG_MAX_LENGTH=$(( ${#ITEM} + OFFSET )) + ((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=$((${#ITEM} + OFFSET)) MICROCODE_MENU+=("$TAG" "$ITEM " "OFF") done < <(echo "$amd_microcode") @@ -127,7 +127,7 @@ amd() { --radiolist "\nSelect a microcode package to install:\n" \ 16 $((MSG_MAX_LENGTH + 58)) 6 "${MICROCODE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit - [ -z "$microcode" ] && { + [ -z "$microcode" ] && { whiptail --backtitle "Proxmox Backup Server Helper Scripts" --title "No Microcode Selected" --msgbox "No microcode package was selected." 10 68 msg_info "Exiting" sleep 1 @@ -136,7 +136,7 @@ amd() { } msg_info "Downloading AMD processor microcode package $microcode" - wget -q https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode + curl -fsSL "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode" -O $(basename "https://ftp.debian.org/debian/pool/non-free-firmware/a/amd64-microcode/$microcode") msg_ok "Downloaded AMD processor microcode package $microcode" msg_info "Installing $microcode (this might take a while)" diff --git a/misc/post-pbs-install.sh b/misc/post-pbs-install.sh index e95c62b0b..c564be1c0 100644 --- a/misc/post-pbs-install.sh +++ b/misc/post-pbs-install.sh @@ -44,7 +44,6 @@ msg_error() { echo -e "${BFR} ${CROSS} ${RD}${msg}${CL}" } - start_routines() { header_info VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)" @@ -171,14 +170,17 @@ while true; do read -p "Start the Proxmox Backup Server Post Install Script (y/n)?" yn case $yn in [Yy]*) break ;; - [Nn]*) clear; exit ;; + [Nn]*) + clear + exit + ;; *) echo "Please answer yes or no." ;; esac done if command -v pveversion >/dev/null 2>&1; then - echo -e "\n🛑 PVE Detected, Wrong Script!\n" - exit 1 + echo -e "\n🛑 PVE Detected, Wrong Script!\n" + exit 1 fi start_routines diff --git a/misc/post-pmg-install.sh b/misc/post-pmg-install.sh index 8c17e3139..f33657860 100644 --- a/misc/post-pmg-install.sh +++ b/misc/post-pmg-install.sh @@ -172,7 +172,10 @@ while true; do read -p "Start the Proxmox Mail Gateway Post Install Script (y/n)?" yn case $yn in [Yy]*) break ;; - [Nn]*) clear; exit ;; + [Nn]*) + clear + exit + ;; *) echo "Please answer yes or no." ;; esac done diff --git a/misc/post-pve-install.sh b/misc/post-pve-install.sh index aeba762cd..c3bac7cfc 100644 --- a/misc/post-pve-install.sh +++ b/misc/post-pve-install.sh @@ -58,7 +58,7 @@ deb http://deb.debian.org/debian bookworm main contrib deb http://deb.debian.org/debian bookworm-updates main contrib deb http://security.debian.org/debian-security bookworm-security main contrib EOF -echo 'APT::Get::Update::SourceListWarnings::NonFreeFirmware "false";' >/etc/apt/apt.conf.d/no-bookworm-firmware.conf + echo 'APT::Get::Update::SourceListWarnings::NonFreeFirmware "false";' >/etc/apt/apt.conf.d/no-bookworm-firmware.conf msg_ok "Corrected Proxmox VE Sources" ;; no) @@ -98,24 +98,24 @@ EOF ;; esac - CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CEPH PACKAGE REPOSITORIES" --menu "The 'Ceph Package Repositories' provides access to both the 'no-subscription' and 'enterprise' repositories (initially disabled).\n \nCorrect 'ceph package sources?" 14 58 2 \ - "yes" " " \ - "no" " " 3>&2 2>&1 1>&3) - case $CHOICE in - yes) - msg_info "Correcting 'ceph package repositories'" - cat </etc/apt/sources.list.d/ceph.list + CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CEPH PACKAGE REPOSITORIES" --menu "The 'Ceph Package Repositories' provides access to both the 'no-subscription' and 'enterprise' repositories (initially disabled).\n \nCorrect 'ceph package sources?" 14 58 2 \ + "yes" " " \ + "no" " " 3>&2 2>&1 1>&3) + case $CHOICE in + yes) + msg_info "Correcting 'ceph package repositories'" + cat </etc/apt/sources.list.d/ceph.list # deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise # deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription # deb https://enterprise.proxmox.com/debian/ceph-reef bookworm enterprise # deb http://download.proxmox.com/debian/ceph-reef bookworm no-subscription EOF - msg_ok "Corrected 'ceph package repositories'" - ;; - no) - msg_error "Selected no to Correcting 'ceph package repositories'" - ;; - esac + msg_ok "Corrected 'ceph package repositories'" + ;; + no) + msg_error "Selected no to Correcting 'ceph package repositories'" + ;; + esac CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PVETEST" --menu "The 'pvetest' repository can give advanced users access to new features and updates before they are officially released.\n \nAdd (Disabled) 'pvetest' repository?" 14 58 2 \ "yes" " " \ @@ -141,7 +141,7 @@ EOF yes) whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "Support Subscriptions" "Supporting the software's development team is essential. Check their official website's Support Subscriptions for pricing. Without their dedicated work, we wouldn't have this exceptional software." 10 58 msg_info "Disabling subscription nag" - echo "DPkg::Post-Invoke { \"dpkg -V proxmox-widget-toolkit | grep -q '/proxmoxlib\.js$'; if [ \$? -eq 1 ]; then { echo 'Removing subscription nag from UI...'; sed -i '/.*data\.status.*{/{s/\!//;s/active/NoMoreNagging/}' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js; }; fi\"; };" >/etc/apt/apt.conf.d/no-nag-script + echo "DPkg::Post-Invoke { \"dpkg -V proxmox-widget-toolkit | grep -q '/proxmoxlib\.js$'; if [ \$? -eq 1 ]; then { echo 'Removing subscription nag from UI...'; sed -i '/.*data\.status.*{/{s/\!//;s/active/NoMoreNagging/}' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js; }; fi\"; };" >/etc/apt/apt.conf.d/no-nag-script apt --reinstall install proxmox-widget-toolkit &>/dev/null msg_ok "Disabled subscription nag (Delete browser cache)" ;; @@ -169,7 +169,7 @@ EOF ;; esac fi - + if systemctl is-active --quiet pve-ha-lrm; then CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "HIGH AVAILABILITY" --menu "If you plan to utilize a single node instead of a clustered environment, you can disable unnecessary high availability (HA) services, thus reclaiming system resources.\n\nIf HA becomes necessary at a later stage, the services can be re-enabled.\n\nDisable high availability?" 18 58 2 \ "yes" " " \ @@ -187,7 +187,7 @@ EOF ;; esac fi - + CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "UPDATE" --menu "\nUpdate Proxmox VE now?" 11 58 2 \ "yes" " " \ "no" " " 3>&2 2>&1 1>&3) @@ -226,7 +226,10 @@ while true; do read -p "Start the Proxmox VE Post Install Script (y/n)?" yn case $yn in [Yy]*) break ;; - [Nn]*) clear; exit ;; + [Nn]*) + clear + exit + ;; *) echo "Please answer yes or no." ;; esac done diff --git a/misc/pve8-upgrade.sh b/misc/pve8-upgrade.sh index 4dd8e1587..7e575f0f1 100644 --- a/misc/pve8-upgrade.sh +++ b/misc/pve8-upgrade.sh @@ -48,48 +48,48 @@ start_routines() { header_info whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8 SOURCES" "This will set the correct sources to update and install Proxmox VE 8." 10 58 - msg_info "Changing to Proxmox VE 8 Sources" - cat </etc/apt/sources.list + msg_info "Changing to Proxmox VE 8 Sources" + cat </etc/apt/sources.list deb http://ftp.debian.org/debian bookworm main contrib deb http://ftp.debian.org/debian bookworm-updates main contrib deb http://security.debian.org/debian-security bookworm-security main contrib EOF - msg_ok "Changed to Proxmox VE 8 Sources" + msg_ok "Changed to Proxmox VE 8 Sources" whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8-ENTERPRISE" "The 'pve-enterprise' repository is only available to users who have purchased a Proxmox VE subscription." 10 58 - msg_info "Disabling 'pve-enterprise' repository" - cat </etc/apt/sources.list.d/pve-enterprise.list + msg_info "Disabling 'pve-enterprise' repository" + cat </etc/apt/sources.list.d/pve-enterprise.list # deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise EOF - msg_ok "Disabled 'pve-enterprise' repository" + msg_ok "Disabled 'pve-enterprise' repository" whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8-NO-SUBSCRIPTION" "The 'pve-no-subscription' repository provides access to all of the open-source components of Proxmox VE." 10 58 - msg_info "Enabling 'pve-no-subscription' repository" - cat </etc/apt/sources.list.d/pve-install-repo.list + msg_info "Enabling 'pve-no-subscription' repository" + cat </etc/apt/sources.list.d/pve-install-repo.list deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription EOF - msg_ok "Enabled 'pve-no-subscription' repository" + msg_ok "Enabled 'pve-no-subscription' repository" whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8 CEPH PACKAGE REPOSITORIES" "The 'Ceph Package Repositories' provides access to both the 'no-subscription' and 'enterprise' repositories." 10 58 - msg_info "Enabling 'ceph package repositories'" - cat </etc/apt/sources.list.d/ceph.list + msg_info "Enabling 'ceph package repositories'" + cat </etc/apt/sources.list.d/ceph.list # deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription EOF - msg_ok "Enabled 'ceph package repositories'" + msg_ok "Enabled 'ceph package repositories'" whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8 TEST" "The 'pvetest' repository can give advanced users access to new features and updates before they are officially released (Disabled)." 10 58 - msg_info "Adding 'pvetest' repository and set disabled" - cat </etc/apt/sources.list.d/pvetest-for-beta.list + msg_info "Adding 'pvetest' repository and set disabled" + cat </etc/apt/sources.list.d/pvetest-for-beta.list # deb http://download.proxmox.com/debian/pve bookworm pvetest EOF - msg_ok "Added 'pvetest' repository" + msg_ok "Added 'pvetest' repository" whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "PVE8 UPDATE" "Updating to Proxmox VE 8" 10 58 - msg_info "Updating to Proxmox VE 8 (Patience)" - apt-get update - DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" dist-upgrade -y - msg_ok "Updated to Proxmox VE 8" + msg_info "Updating to Proxmox VE 8 (Patience)" + apt-get update + DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" dist-upgrade -y + msg_ok "Updated to Proxmox VE 8" CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "REBOOT" --menu "\nReboot Proxmox VE 8 now? (recommended)" 11 58 2 \ "yes" " " \ @@ -113,7 +113,10 @@ while true; do read -p "Start the Update to Proxmox VE 8 Script (y/n)?" yn case $yn in [Yy]*) break ;; - [Nn]*) clear; exit ;; + [Nn]*) + clear + exit + ;; *) echo "Please answer yes or no." ;; esac done diff --git a/misc/pyenv.sh b/misc/pyenv.sh index c1d8044ad..2099da977 100644 --- a/misc/pyenv.sh +++ b/misc/pyenv.sh @@ -28,7 +28,10 @@ function msg_error() { local msg="$1" echo -e "${BFR} ${CROSS} ${RD}${msg}${CL}" } -if command -v pveversion >/dev/null 2>&1; then msg_error "Can't Install on Proxmox "; exit; fi +if command -v pveversion >/dev/null 2>&1; then + msg_error "Can't Install on Proxmox " + exit +fi msg_info "Installing pyenv" apt-get install -y \ make \ @@ -58,9 +61,9 @@ apt-get install -y \ git clone https://github.com/pyenv/pyenv.git ~/.pyenv &>/dev/null set +e -echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc -echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc -echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init --path)"\nfi' >> ~/.bashrc +echo 'export PYENV_ROOT="$HOME/.pyenv"' >>~/.bashrc +echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >>~/.bashrc +echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init --path)"\nfi' >>~/.bashrc msg_ok "Installed pyenv" . ~/.bashrc set -e @@ -70,8 +73,8 @@ pyenv global 3.11.1 msg_ok "Installed Python 3.11.1" read -r -p "Would you like to install Home Assistant Beta? " prompt if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then -msg_info "Installing Home Assistant Beta" -cat </etc/systemd/system/homeassistant.service + msg_info "Installing Home Assistant Beta" + cat </etc/systemd/system/homeassistant.service [Unit] Description=Home Assistant After=network-online.target @@ -83,31 +86,31 @@ RestartForceExitStatus=100 [Install] WantedBy=multi-user.target EOF -mkdir /srv/homeassistant -cd /srv/homeassistant -python3 -m venv . -source bin/activate -python3 -m pip install wheel &>/dev/null -pip3 install --upgrade pip &>/dev/null -pip3 install psycopg2-binary &>/dev/null -pip3 install --pre homeassistant &>/dev/null -systemctl enable homeassistant &>/dev/null -msg_ok "Installed Home Assistant Beta" -echo -e " Go to $(hostname -I | awk '{print $1}'):8123" -hass + mkdir /srv/homeassistant + cd /srv/homeassistant + python3 -m venv . + source bin/activate + python3 -m pip install wheel &>/dev/null + pip3 install --upgrade pip &>/dev/null + pip3 install psycopg2-binary &>/dev/null + pip3 install --pre homeassistant &>/dev/null + systemctl enable homeassistant &>/dev/null + msg_ok "Installed Home Assistant Beta" + echo -e " Go to $(hostname -I | awk '{print $1}'):8123" + hass fi read -r -p "Would you like to install ESPHome Beta? " prompt if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then -msg_info "Installing ESPHome Beta" -mkdir /srv/esphome -cd /srv/esphome -python3 -m venv . -source bin/activate -python3 -m pip install wheel &>/dev/null -pip3 install --upgrade pip &>/dev/null -pip3 install --pre esphome &>/dev/null -cat </srv/esphome/start.sh + msg_info "Installing ESPHome Beta" + mkdir /srv/esphome + cd /srv/esphome + python3 -m venv . + source bin/activate + python3 -m pip install wheel &>/dev/null + pip3 install --upgrade pip &>/dev/null + pip3 install --pre esphome &>/dev/null + cat </srv/esphome/start.sh #!/usr/bin/env bash # Copyright (c) 2021-2025 tteck @@ -118,8 +121,8 @@ cat </srv/esphome/start.sh source /srv/esphome/bin/activate esphome dashboard /srv/esphome/ EOF -chmod +x start.sh -cat </etc/systemd/system/esphomedashboard.service + chmod +x start.sh + cat </etc/systemd/system/esphomedashboard.service [Unit] Description=ESPHome Dashboard Service After=network.target @@ -133,27 +136,27 @@ Restart=on-failure [Install] WantedBy=multi-user.target EOF -systemctl enable --now esphomedashboard &>/dev/null -msg_ok "Installed ESPHome Beta" -echo -e " Go to $(hostname -I | awk '{print $1}'):6052" -exec $SHELL + systemctl enable --now esphomedashboard &>/dev/null + msg_ok "Installed ESPHome Beta" + echo -e " Go to $(hostname -I | awk '{print $1}'):6052" + exec $SHELL fi read -r -p "Would you like to install Matter-Server (Beta)? " prompt if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then -msg_info "Installing Matter Server" -apt-get install -y \ -libcairo2-dev \ -libjpeg62-turbo-dev \ -libgirepository1.0-dev \ -libpango1.0-dev \ -libgif-dev \ -g++ &>/dev/null -python3 -m pip install wheel -pip3 install --upgrade pip -pip install python-matter-server[server] -msg_ok "Installed Matter Server" -echo -e "Start server > python -m matter_server.server" + msg_info "Installing Matter Server" + apt-get install -y \ + libcairo2-dev \ + libjpeg62-turbo-dev \ + libgirepository1.0-dev \ + libpango1.0-dev \ + libgif-dev \ + g++ &>/dev/null + python3 -m pip install wheel + pip3 install --upgrade pip + pip install python-matter-server[server] + msg_ok "Installed Matter Server" + echo -e "Start server > python -m matter_server.server" fi msg_ok "\nFinished\n" exec $SHELL diff --git a/misc/scaling-governor.sh b/misc/scaling-governor.sh index cb0975349..29cff8d76 100644 --- a/misc/scaling-governor.sh +++ b/misc/scaling-governor.sh @@ -6,8 +6,8 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE set -e header_info() { -clear -cat <&1 1>&2 2>&3 | tr -d '"') || exit [ -z "$scaling_governor" ] && { - whiptail --backtitle "Proxmox VE Helper Scripts" --title "No CPU Scaling Governor Selected" --msgbox "It appears that no CPU Scaling Governor was selected" 10 68 - clear - exit + whiptail --backtitle "Proxmox VE Helper Scripts" --title "No CPU Scaling Governor Selected" --msgbox "It appears that no CPU Scaling Governor was selected" 10 68 + clear + exit } echo "${scaling_governor}" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor >/dev/null current_governor=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor) @@ -38,21 +38,24 @@ CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CPU Scaling G "no" " " 3>&2 2>&1 1>&3) case $CHOICE in - yes) - set +e - NEW_CRONTAB_COMMAND="(sleep 60 && echo \"$current_governor\" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor)" - EXISTING_CRONTAB=$(crontab -l 2>/dev/null) - if [[ -n "$EXISTING_CRONTAB" ]]; then - TEMP_CRONTAB_FILE=$(mktemp) - echo "$EXISTING_CRONTAB" | grep -v "@reboot (sleep 60 && echo*" > "$TEMP_CRONTAB_FILE" - crontab "$TEMP_CRONTAB_FILE" - rm "$TEMP_CRONTAB_FILE" - fi - (crontab -l 2>/dev/null; echo "@reboot $NEW_CRONTAB_COMMAND") | crontab - - echo -e "\nCrontab Set (use 'crontab -e' to check)" - ;; - no) - echo -e "\n\033[31mNOTE: Settings return to default after reboot\033[m\n" - ;; +yes) + set +e + NEW_CRONTAB_COMMAND="(sleep 60 && echo \"$current_governor\" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor)" + EXISTING_CRONTAB=$(crontab -l 2>/dev/null) + if [[ -n "$EXISTING_CRONTAB" ]]; then + TEMP_CRONTAB_FILE=$(mktemp) + echo "$EXISTING_CRONTAB" | grep -v "@reboot (sleep 60 && echo*" >"$TEMP_CRONTAB_FILE" + crontab "$TEMP_CRONTAB_FILE" + rm "$TEMP_CRONTAB_FILE" + fi + ( + crontab -l 2>/dev/null + echo "@reboot $NEW_CRONTAB_COMMAND" + ) | crontab - + echo -e "\nCrontab Set (use 'crontab -e' to check)" + ;; +no) + echo -e "\n\033[31mNOTE: Settings return to default after reboot\033[m\n" + ;; esac echo -e "Current CPU Scaling Governor is set to \033[36m$current_governor\033[m\n" diff --git a/misc/update-lxcs.sh b/misc/update-lxcs.sh index 09b697050..973e5973d 100644 --- a/misc/update-lxcs.sh +++ b/misc/update-lxcs.sh @@ -38,17 +38,17 @@ done < <(pct list | awk 'NR>1') excluded_containers=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Containers on $NODE" --checklist "\nSelect containers to skip from updates:\n" 16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"') || exit function needs_reboot() { - local container=$1 - local os=$(pct config "$container" | awk '/^ostype/ {print $2}') - local reboot_required_file="/var/run/reboot-required.pkgs" - if [ -f "$reboot_required_file" ]; then - if [[ "$os" == "ubuntu" || "$os" == "debian" ]]; then - if pct exec "$container" -- [ -s "$reboot_required_file" ]; then - return 0 - fi - fi + local container=$1 + local os=$(pct config "$container" | awk '/^ostype/ {print $2}') + local reboot_required_file="/var/run/reboot-required.pkgs" + if [ -f "$reboot_required_file" ]; then + if [[ "$os" == "ubuntu" || "$os" == "debian" ]]; then + if pct exec "$container" -- [ -s "$reboot_required_file" ]; then + return 0 + fi fi - return 1 + fi + return 1 } function update_container() { @@ -94,9 +94,9 @@ for container in $(pct list | awk '{if(NR>1) print $1}'); do update_container $container fi if pct exec "$container" -- [ -e "/var/run/reboot-required" ]; then - # Get the container's hostname and add it to the list - container_hostname=$(pct exec "$container" hostname) - containers_needing_reboot+=("$container ($container_hostname)") + # Get the container's hostname and add it to the list + container_hostname=$(pct exec "$container" hostname) + containers_needing_reboot+=("$container ($container_hostname)") fi fi done @@ -104,9 +104,9 @@ wait header_info echo -e "${GN}The process is complete, and the containers have been successfully updated.${CL}\n" if [ "${#containers_needing_reboot[@]}" -gt 0 ]; then - echo -e "${RD}The following containers require a reboot:${CL}" - for container_name in "${containers_needing_reboot[@]}"; do - echo "$container_name" - done + echo -e "${RD}The following containers require a reboot:${CL}" + for container_name in "${containers_needing_reboot[@]}"; do + echo "$container_name" + done fi echo "" diff --git a/misc/webmin.sh b/misc/webmin.sh index 92825f463..6fc53a321 100644 --- a/misc/webmin.sh +++ b/misc/webmin.sh @@ -45,10 +45,10 @@ apt update &>/dev/null apt-get -y install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl unzip shared-mime-info &>/dev/null msg_ok "Installed Prerequisites" -LATEST=$(curl -sL https://api.github.com/repos/webmin/webmin/releases/latest | grep '"tag_name":' | cut -d'"' -f4) +LATEST=$(curl -fsSLL https://api.github.com/repos/webmin/webmin/releases/latest | grep '"tag_name":' | cut -d'"' -f4) msg_info "Downloading Webmin" -wget -q https://github.com/webmin/webmin/releases/download/$LATEST/webmin_${LATEST}_all.deb +curl -fsSL "https://github.com/webmin/webmin/releases/download/$LATEST/webmin_${LATEST}_all.deb" -O $(basename "https://github.com/webmin/webmin/releases/download/$LATEST/webmin_${LATEST}_all.deb") msg_ok "Downloaded Webmin" msg_info "Installing Webmin" diff --git a/turnkey/turnkey.sh b/turnkey/turnkey.sh index 5a39bc83a..0e71dcad3 100644 --- a/turnkey/turnkey.sh +++ b/turnkey/turnkey.sh @@ -238,4 +238,4 @@ info "Proceed to the LXC console to complete the setup." echo info "login: root" info "password: $PASS" -echo +echo \ No newline at end of file diff --git a/vm/archlinux-vm.sh b/vm/archlinux-vm.sh index 4e066037b..e6498c13e 100644 --- a/vm/archlinux-vm.sh +++ b/vm/archlinux-vm.sh @@ -4,8 +4,7 @@ # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) - +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -65,7 +64,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -94,7 +93,7 @@ pushd $TEMP_DIR >/dev/null if whiptail --backtitle "Proxmox VE Helper Scripts" --title "Arch Linux VM" --yesno "This will create a New Arch Linux VM. Proceed?" 10 58; then : else - header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit + header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit fi function msg_info() { @@ -123,7 +122,7 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "${CROSS}${RD}This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." @@ -228,7 +227,7 @@ function advanced_settings() { else exit-script fi - + if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GiB (e.g., 10, 20)" 8 58 "$DISK_SIZE" --title "DISK SIZE" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then DISK_SIZE=$(echo "$DISK_SIZE" | tr -d ' ') if [[ "$DISK_SIZE" =~ ^[0-9]+$ ]]; then @@ -243,7 +242,7 @@ function advanced_settings() { else exit-script fi - + if DISK_CACHE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "DISK CACHE" --radiolist "Choose" --cancel-button Exit-Script 10 58 2 \ "0" "None (Default)" ON \ "1" "Write Through" OFF \ @@ -425,7 +424,7 @@ msg_info "Retrieving the URL for the Arch Linux .iso File" URL=https://geo.mirror.pkgbuild.com/iso/latest/archlinux-x86_64.iso sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -495,11 +494,11 @@ EOF ) qm set "$VMID" -description "$DESCRIPTION" >/dev/null if [ -n "$DISK_SIZE" ]; then - msg_info "Resizing disk to $DISK_SIZE GB" - qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null + msg_info "Resizing disk to $DISK_SIZE GB" + qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null else - msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" - qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null + msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" + qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null fi msg_ok "Created a Arch Linux VM ${CL}${BL}(${HN})" diff --git a/vm/debian-vm.sh b/vm/debian-vm.sh index 6abb669b1..b4a38784b 100644 --- a/vm/debian-vm.sh +++ b/vm/debian-vm.sh @@ -4,7 +4,7 @@ # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -63,7 +63,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -93,7 +93,7 @@ pushd $TEMP_DIR >/dev/null if whiptail --backtitle "Proxmox VE Helper Scripts" --title "Debian 12 VM" --yesno "This will create a New Debian 12 VM. Proceed?" 10 58; then : else - header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit + header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit fi function msg_info() { @@ -122,7 +122,7 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "${CROSS}${RD}This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." @@ -227,7 +227,7 @@ function advanced_settings() { else exit-script fi - + if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GiB (e.g., 10, 20)" 8 58 "$DISK_SIZE" --title "DISK SIZE" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then DISK_SIZE=$(echo "$DISK_SIZE" | tr -d ' ') if [[ "$DISK_SIZE" =~ ^[0-9]+$ ]]; then @@ -425,7 +425,7 @@ msg_info "Retrieving the URL for the Debian 12 Qcow2 Disk Image" URL=https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-nocloud-amd64.qcow2 sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -494,12 +494,12 @@ EOF ) qm set "$VMID" -description "$DESCRIPTION" >/dev/null if [ -n "$DISK_SIZE" ]; then - msg_info "Resizing disk to $DISK_SIZE GB" - qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null + msg_info "Resizing disk to $DISK_SIZE GB" + qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null else - msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" - qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null -fi + msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" + qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null +fi msg_ok "Created a Debian 12 VM ${CL}${BL}(${HN})" if [ "$START_VM" == "yes" ]; then diff --git a/vm/docker-vm.sh b/vm/docker-vm.sh index 38bf0e1e7..d9bd48d05 100644 --- a/vm/docker-vm.sh +++ b/vm/docker-vm.sh @@ -4,7 +4,7 @@ # Author: thost96 (thost96) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -44,7 +44,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -102,13 +102,13 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." sleep 2 exit -fi + fi } function arch_check() { @@ -388,7 +388,7 @@ msg_info "Retrieving the URL for the Debian 12 Qcow2 Disk Image" URL="https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-nocloud-$(dpkg --print-architecture).qcow2" sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -421,14 +421,13 @@ msg_ok "Installed libguestfs-tools successfully" msg_info "Adding Docker and Docker Compose Plugin to Debian 12 Qcow2 Disk Image" virt-customize -q -a "${FILE}" --install qemu-guest-agent,apt-transport-https,ca-certificates,curl,gnupg,software-properties-common,lsb-release >/dev/null && -virt-customize -q -a "${FILE}" --run-command "mkdir -p /etc/apt/keyrings && curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg" >/dev/null && -virt-customize -q -a "${FILE}" --run-command "echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian bookworm stable' > /etc/apt/sources.list.d/docker.list" >/dev/null && -virt-customize -q -a "${FILE}" --run-command "apt-get update -qq && apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin" >/dev/null && -virt-customize -q -a "${FILE}" --run-command "systemctl enable docker" >/dev/null && -virt-customize -q -a "${FILE}" --run-command "echo -n > /etc/machine-id" >/dev/null + virt-customize -q -a "${FILE}" --run-command "mkdir -p /etc/apt/keyrings && curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg" >/dev/null && + virt-customize -q -a "${FILE}" --run-command "echo 'deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian bookworm stable' > /etc/apt/sources.list.d/docker.list" >/dev/null && + virt-customize -q -a "${FILE}" --run-command "apt-get update -qq && apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin" >/dev/null && + virt-customize -q -a "${FILE}" --run-command "systemctl enable docker" >/dev/null && + virt-customize -q -a "${FILE}" --run-command "echo -n > /etc/machine-id" >/dev/null msg_ok "Added Docker and Docker Compose Plugin to Debian 12 Qcow2 Disk Image successfully" - msg_info "Creating a Docker VM" qm create $VMID -agent 1${MACHINE} -tablet 0 -localtime 1 -bios ovmf${CPU_TYPE} -cores $CORE_COUNT -memory $RAM_SIZE \ -name $HN -tags community-script,debian12,docker -net0 virtio,bridge=$BRG,macaddr=$MAC$VLAN$MTU -onboot 1 -ostype l26 -scsihw virtio-scsi-pci @@ -442,7 +441,8 @@ qm set $VMID \ qm resize $VMID scsi0 8G >/dev/null qm set $VMID --agent enabled=1 >/dev/null - DESCRIPTION=$(cat < Logo diff --git a/vm/haos-vm.sh b/vm/haos-vm.sh index f31dbe8ab..7f03ef14b 100644 --- a/vm/haos-vm.sh +++ b/vm/haos-vm.sh @@ -5,8 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) - +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -32,7 +31,7 @@ var_os="homeassistant" DISK_SIZE="32G" # for version in "${VERSIONS[@]}"; do - eval "$version=$(curl -s https://raw.githubusercontent.com/home-assistant/version/master/$version.json | grep "ova" | cut -d '"' -f 4)" + eval "$version=$(curl -fsSL https://raw.githubusercontent.com/home-assistant/version/master/$version.json | grep "ova" | cut -d '"' -f 4)" done YW=$(echo "\033[33m") BL=$(echo "\033[36m") @@ -51,11 +50,11 @@ SPINNER_PID="" set -Eeuo pipefail trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local exit_code="$?" local line_number="$1" @@ -87,13 +86,13 @@ else fi function spinner() { - local chars="/-\|" - local spin_i=0 - printf "\e[?25l" - while true; do - printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}" - sleep 0.1 - done + local chars="/-\|" + local spin_i=0 + printf "\e[?25l" + while true; do + printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}" + sleep 0.1 + done } function msg_info() { @@ -104,14 +103,14 @@ function msg_info() { } function msg_ok() { - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local msg="$1" echo -e "${BFR} ${CM} ${GN}${msg}${CL}" } function msg_error() { - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" local msg="$1" echo -e "${BFR} ${CROSS} ${RD}${msg}${CL}" @@ -134,7 +133,7 @@ function pve_check() { echo -e "Exiting..." sleep 2 exit -fi + fi } function arch_check() { @@ -393,7 +392,6 @@ pve_check ssh_check start_script - post_to_api_vm msg_info "Validating Storage" @@ -416,7 +414,7 @@ elif [ $((${#STORAGE_MENU[@]} / 3)) -eq 1 ]; then STORAGE=${STORAGE_MENU[0]} else while [ -z "${STORAGE:+x}" ]; do - if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi + if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi printf "\e[?25h" STORAGE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Storage Pools" --radiolist \ "Which storage pool you would like to use for ${HN}?\nTo make a selection, use the Spacebar.\n" \ @@ -434,7 +432,7 @@ else fi sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}haos_ova-${BRANCH}.qcow2.xz${CL}" @@ -485,5 +483,3 @@ if [ "$START_VM" == "yes" ]; then fi post_update_to_api "done" "none" msg_ok "Completed Successfully!\n" - - diff --git a/vm/mikrotik-routeros.sh b/vm/mikrotik-routeros.sh index ce417ca85..816c66378 100644 --- a/vm/mikrotik-routeros.sh +++ b/vm/mikrotik-routeros.sh @@ -5,8 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) - +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { cat <<"EOF" @@ -50,7 +49,7 @@ shopt -s expand_aliases alias die='EXIT=$? LINE=$LINENO error_exit' trap die ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_exit() { trap - ERR @@ -255,7 +254,7 @@ URL=https://download.mikrotik.com/routeros/7.15.3/chr-7.15.3.img.zip sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}$FILE${CL}" diff --git a/vm/nextcloud-vm.sh b/vm/nextcloud-vm.sh index eaa20adec..c38de7375 100644 --- a/vm/nextcloud-vm.sh +++ b/vm/nextcloud-vm.sh @@ -5,7 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -46,7 +46,7 @@ THIN="discard=on,ssd=1" set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -110,7 +110,7 @@ function pve_check() { echo -e "Exiting..." sleep 2 exit -fi + fi } function arch_check() { @@ -389,7 +389,7 @@ msg_info "Retrieving the URL for the $NAME Disk Image" URL=http://mirror.turnkeylinux.org/turnkeylinux/images/iso/turnkey-nextcloud-18.1-bookworm-amd64.iso sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" diff --git a/vm/openwrt.sh b/vm/openwrt.sh index ea0474e58..caf5ac6aa 100644 --- a/vm/openwrt.sh +++ b/vm/openwrt.sh @@ -7,7 +7,7 @@ # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Based on work from https://i12bretro.github.io/tutorials/0405.html -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -49,7 +49,7 @@ CROSS="${RD}✗${CL}" set -Eeo pipefail trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -176,7 +176,7 @@ function pve_check() { echo -e "Exiting..." sleep 2 exit -fi + fi } function arch_check() { @@ -447,13 +447,13 @@ msg_ok "Using ${CL}${BL}$STORAGE${CL} ${GN}for Storage Location." msg_ok "Virtual Machine ID is ${CL}${BL}$VMID${CL}." msg_info "Getting URL for OpenWrt Disk Image" -response=$(curl -s https://openwrt.org) +response=$(curl -fsSL https://openwrt.org) stableversion=$(echo "$response" | sed -n 's/.*Current stable release - OpenWrt \([0-9.]\+\).*/\1/p' | head -n 1) URL="https://downloads.openwrt.org/releases/$stableversion/targets/x86/64/openwrt-$stableversion-x86-64-generic-ext4-combined.img.gz" sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}$FILE${CL}" diff --git a/vm/opnsense-vm.sh b/vm/opnsense-vm.sh index 04a6a9124..db4ae2898 100644 --- a/vm/opnsense-vm.sh +++ b/vm/opnsense-vm.sh @@ -4,11 +4,11 @@ # Author: michelroegl-brunner # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<<$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear - cat <<"EOF" + cat <<"EOF" ____ ____ _ __ / __ \/ __ \/ | / /_______ ____ ________ / / / / /_/ / |/ / ___/ _ \/ __ \/ ___/ _ \ @@ -230,8 +230,8 @@ function default_settings() { echo -e "${DGN}Allocated Cores: ${BGN}${CORE_COUNT}${CL}" echo -e "${DGN}Allocated RAM: ${BGN}${RAM_SIZE}${CL}" if ! grep -q "^iface ${BRG}" /etc/network/interfaces; then - msg_error "Bridge '${BRG}' does not exist in /etc/network/interfaces" - exit + msg_error "Bridge '${BRG}' does not exist in /etc/network/interfaces" + exit else echo -e "${DGN}Using LAN Bridge: ${BGN}${BRG}${CL}" fi @@ -527,10 +527,10 @@ msg_info "Retrieving the URL for the OPNsense Qcow2 Disk Image" URL=https://download.freebsd.org/releases/VM-IMAGES/14.2-RELEASE/amd64/Latest/FreeBSD-14.2-RELEASE-amd64.qcow2.xz sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=Fressbsd.qcow2 -unxz -cv $(basename $URL) > ${FILE} +unxz -cv $(basename $URL) >${FILE} msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" STORAGE_TYPE=$(pvesm status -storage $STORAGE | awk 'NR>1 {print $2}') @@ -564,10 +564,11 @@ qm set $VMID \ -efidisk0 ${DISK0_REF}${FORMAT} \ -scsi0 ${DISK1_REF},${DISK_CACHE}${THIN}size=2G \ -boot order=scsi0 \ - -serial0 socket >/dev/null \ - -tags community-script + -serial0 socket \ + -tags community-script >/dev/null qm resize $VMID scsi0 10G >/dev/null - DESCRIPTION=$(cat < Logo @@ -596,76 +597,76 @@ qm resize $VMID scsi0 10G >/dev/null EOF ) - qm set "$VMID" -description "$DESCRIPTION" >/dev/null +qm set "$VMID" -description "$DESCRIPTION" >/dev/null msg_info "Bridge interfaces are being added." qm set $VMID \ -net0 virtio,bridge=${BRG},macaddr=${MAC}${VLAN}${MTU} 2>/dev/null msg_ok "Bridge interfaces have been successfully added." - -msg_ok "Created a OPNsense VM ${CL}${BL}(${HN})" - msg_ok "Starting OPNsense VM (Patience this takes 20-30 minutes)" - qm start $VMID - sleep 90 - send_line_to_vm "root" - send_line_to_vm "fetch https://raw.githubusercontent.com/opnsense/update/master/src/bootstrap/opnsense-bootstrap.sh.in" - qm set $VMID \ - -net1 virtio,bridge=${WAN_BRG},macaddr=${WAN_MAC} &>/dev/null - sleep 10 - send_line_to_vm "sh ./opnsense-bootstrap.sh.in -y -f -r 25.1" - msg_ok "OPNsense VM is being installed, do not close the terminal, or the installation will fail." - #We need to wait for the OPNsense build proccess to finish, this takes a few minutes - sleep 1000 - send_line_to_vm "root" - send_line_to_vm "opnsense" - send_line_to_vm "2" - if [ "$IP_ADDR" != "" ]; then - send_line_to_vm "1" - send_line_to_vm "n" - send_line_to_vm "${IP_ADDR}" - send_line_to_vm "${NETMASK}" - send_line_to_vm "${LAN_GW}" - send_line_to_vm "n" - send_line_to_vm " " - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm " " - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm "n" - else - send_line_to_vm "1" - send_line_to_vm "y" - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm " " - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm "n" - fi - #we need to wait for the Config changes to be saved - sleep 20 - if [ "$WAN_IP_ADDR" != "" ]; then - send_line_to_vm "2" - send_line_to_vm "2" - send_line_to_vm "n" - send_line_to_vm "${WAN_IP_ADDR}" - send_line_to_vm "${NETMASK}" - send_line_to_vm "${LAN_GW}" - send_line_to_vm "n" - send_line_to_vm " " - send_line_to_vm "n" - send_line_to_vm " " - send_line_to_vm "n" - send_line_to_vm "n" - send_line_to_vm "n" - fi - sleep 10 - send_line_to_vm "0" - msg_ok "Started OPNsense VM" +msg_ok "Created a OPNsense VM ${CL}${BL}(${HN})" +msg_ok "Starting OPNsense VM (Patience this takes 20-30 minutes)" +qm start $VMID +sleep 90 +send_line_to_vm "root" +send_line_to_vm "fetch https://raw.githubusercontent.com/opnsense/update/master/src/bootstrap/opnsense-bootstrap.sh.in" +qm set $VMID \ + -net1 virtio,bridge=${WAN_BRG},macaddr=${WAN_MAC} &>/dev/null +sleep 10 +send_line_to_vm "sh ./opnsense-bootstrap.sh.in -y -f -r 25.1" +msg_ok "OPNsense VM is being installed, do not close the terminal, or the installation will fail." +#We need to wait for the OPNsense build proccess to finish, this takes a few minutes +sleep 1000 +send_line_to_vm "root" +send_line_to_vm "opnsense" +send_line_to_vm "2" + +if [ "$IP_ADDR" != "" ]; then + send_line_to_vm "1" + send_line_to_vm "n" + send_line_to_vm "${IP_ADDR}" + send_line_to_vm "${NETMASK}" + send_line_to_vm "${LAN_GW}" + send_line_to_vm "n" + send_line_to_vm " " + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm " " + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm "n" +else + send_line_to_vm "1" + send_line_to_vm "y" + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm " " + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm "n" +fi +#we need to wait for the Config changes to be saved +sleep 20 +if [ "$WAN_IP_ADDR" != "" ]; then + send_line_to_vm "2" + send_line_to_vm "2" + send_line_to_vm "n" + send_line_to_vm "${WAN_IP_ADDR}" + send_line_to_vm "${NETMASK}" + send_line_to_vm "${LAN_GW}" + send_line_to_vm "n" + send_line_to_vm " " + send_line_to_vm "n" + send_line_to_vm " " + send_line_to_vm "n" + send_line_to_vm "n" + send_line_to_vm "n" +fi +sleep 10 +send_line_to_vm "0" +msg_ok "Started OPNsense VM" msg_ok "Completed Successfully!\n" if [ "$IP_ADDR" != "" ]; then diff --git a/vm/owncloud-vm.sh b/vm/owncloud-vm.sh index 4c49e9a23..7a663a0c1 100644 --- a/vm/owncloud-vm.sh +++ b/vm/owncloud-vm.sh @@ -5,7 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -46,7 +46,7 @@ THIN="discard=on,ssd=1" set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -110,7 +110,7 @@ function pve_check() { echo -e "Exiting..." sleep 2 exit -fi + fi } function arch_check() { @@ -389,7 +389,7 @@ msg_info "Retrieving the URL for the $NAME Disk Image" URL=http://mirror.turnkeylinux.org/turnkeylinux/images/iso/turnkey-owncloud-18.0-bookworm-amd64.iso sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" diff --git a/vm/pimox-haos-vm.sh b/vm/pimox-haos-vm.sh index 371034305..8161d6f71 100644 --- a/vm/pimox-haos-vm.sh +++ b/vm/pimox-haos-vm.sh @@ -5,7 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { cat <<"EOF" @@ -35,9 +35,9 @@ DISK_SIZE="32G" GEN_MAC=$(echo '00 60 2f'$(od -An -N3 -t xC /dev/urandom) | sed -e 's/ /:/g' | tr '[:lower:]' '[:upper:]') USEDID=$(pvesh get /cluster/resources --type vm --output-format yaml | egrep -i 'vmid' | awk '{print substr($2, 1, length($2)-0) }') NEXTID=$(pvesh get /cluster/nextid) -STABLE=$(curl -s https://raw.githubusercontent.com/home-assistant/version/master/stable.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') -BETA=$(curl -s https://raw.githubusercontent.com/home-assistant/version/master/beta.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') -DEV=$(curl -s https://raw.githubusercontent.com/home-assistant/version/master/dev.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') +STABLE=$(curl -fsSL https://raw.githubusercontent.com/home-assistant/version/master/stable.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') +BETA=$(curl -fsSL https://raw.githubusercontent.com/home-assistant/version/master/beta.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') +DEV=$(curl -fsSL https://raw.githubusercontent.com/home-assistant/version/master/dev.json | grep "ova" | awk '{print substr($2, 2, length($2)-3) }') YW=$(echo "\033[33m") BL=$(echo "\033[36m") HA=$(echo "\033[1;34m") @@ -58,7 +58,7 @@ shopt -s expand_aliases alias die='EXIT=$? LINE=$LINENO error_exit' trap die ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_exit() { trap - ERR @@ -84,10 +84,10 @@ function cleanup() { } TEMP_DIR=$(mktemp -d) pushd $TEMP_DIR >/dev/null -if ! command -v whiptail &> /dev/null; then - echo "Installing whiptail..." - apt-get update &>/dev/null - apt-get install -y whiptail &>/dev/null +if ! command -v whiptail &>/dev/null; then + echo "Installing whiptail..." + apt-get update &>/dev/null + apt-get install -y whiptail &>/dev/null fi if (whiptail --backtitle "Proxmox VE Helper Scripts" --title "PiMox HAOS VM" --yesno "This will create a New PiMox HAOS VM. Proceed?" 10 58); then echo "User selected Yes" @@ -296,7 +296,7 @@ msg_info "Getting URL for Home Assistant ${BRANCH} Disk Image" URL=https://github.com/home-assistant/operating-system/releases/download/${BRANCH}/haos_generic-aarch64-${BRANCH}.qcow2.xz sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}haos_generic-aarch64-${BRANCH}.qcow2.xz${CL}" diff --git a/vm/ubuntu2204-vm.sh b/vm/ubuntu2204-vm.sh index 2da417537..73457818a 100644 --- a/vm/ubuntu2204-vm.sh +++ b/vm/ubuntu2204-vm.sh @@ -4,7 +4,7 @@ # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -63,7 +63,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -92,7 +92,7 @@ pushd $TEMP_DIR >/dev/null if whiptail --backtitle "Proxmox VE Helper Scripts" --title "Ubuntu 22.04 VM" --yesno "This will create a New Ubuntu 22.04 VM. Proceed?" 10 58; then : else - header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit + header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit fi function msg_info() { @@ -121,7 +121,7 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "${CROSS}${RD}This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." @@ -226,7 +226,7 @@ function advanced_settings() { else exit-script fi - + if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GiB (e.g., 10, 20)" 8 58 "$DISK_SIZE" --title "DISK SIZE" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then DISK_SIZE=$(echo "$DISK_SIZE" | tr -d ' ') if [[ "$DISK_SIZE" =~ ^[0-9]+$ ]]; then @@ -241,7 +241,7 @@ function advanced_settings() { else exit-script fi - + if DISK_CACHE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "DISK CACHE" --radiolist "Choose" --cancel-button Exit-Script 10 58 2 \ "0" "None (Default)" ON \ "1" "Write Through" OFF \ @@ -423,7 +423,7 @@ msg_info "Retrieving the URL for the Ubuntu 22.04 Disk Image" URL=https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -493,11 +493,11 @@ EOF ) qm set "$VMID" -description "$DESCRIPTION" >/dev/null if [ -n "$DISK_SIZE" ]; then - msg_info "Resizing disk to $DISK_SIZE GB" - qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null + msg_info "Resizing disk to $DISK_SIZE GB" + qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null else - msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" - qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null + msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" + qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null fi msg_ok "Created a Ubuntu 22.04 VM ${CL}${BL}(${HN})" diff --git a/vm/ubuntu2404-vm.sh b/vm/ubuntu2404-vm.sh index acabade15..5ea957b3e 100644 --- a/vm/ubuntu2404-vm.sh +++ b/vm/ubuntu2404-vm.sh @@ -5,7 +5,7 @@ # License: MIT # https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -29,7 +29,7 @@ var_os="ubuntu" var_version="2404" YW=$(echo "\033[33m") -BL=$(echo "\033[36m") +BL=$(echo "\033[36m") RD=$(echo "\033[01;31m") BGN=$(echo "\033[4;92m") GN=$(echo "\033[1;92m") @@ -64,7 +64,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -93,7 +93,7 @@ pushd $TEMP_DIR >/dev/null if whiptail --backtitle "Proxmox VE Helper Scripts" --title "Ubuntu 24.04 VM" --yesno "This will create a New Ubuntu 24.04 VM. Proceed?" 10 58; then : else - header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit + header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit fi function msg_info() { @@ -122,7 +122,7 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "${CROSS}${RD}This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." @@ -227,7 +227,7 @@ function advanced_settings() { else exit-script fi - + if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GiB (e.g., 10, 20)" 8 58 "$DISK_SIZE" --title "DISK SIZE" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then DISK_SIZE=$(echo "$DISK_SIZE" | tr -d ' ') if [[ "$DISK_SIZE" =~ ^[0-9]+$ ]]; then @@ -242,7 +242,7 @@ function advanced_settings() { else exit-script fi - + if DISK_CACHE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "DISK CACHE" --radiolist "Choose" --cancel-button Exit-Script 10 58 2 \ "0" "None (Default)" ON \ "1" "Write Through" OFF \ @@ -423,7 +423,7 @@ msg_info "Retrieving the URL for the Ubuntu 24.04 Disk Image" URL=https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -493,11 +493,11 @@ EOF ) qm set "$VMID" -description "$DESCRIPTION" >/dev/null if [ -n "$DISK_SIZE" ]; then - msg_info "Resizing disk to $DISK_SIZE GB" - qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null + msg_info "Resizing disk to $DISK_SIZE GB" + qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null else - msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" - qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null + msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" + qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null fi msg_ok "Created a Ubuntu 24.04 VM ${CL}${BL}(${HN})" diff --git a/vm/ubuntu2410-vm.sh b/vm/ubuntu2410-vm.sh index 69e2f5359..459c1ac6a 100644 --- a/vm/ubuntu2410-vm.sh +++ b/vm/ubuntu2410-vm.sh @@ -4,7 +4,7 @@ # Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -source /dev/stdin <<< $(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) +source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) function header_info { clear @@ -63,7 +63,7 @@ THIN="discard=on,ssd=1," set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR trap cleanup EXIT -trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT +trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM function error_handler() { local exit_code="$?" @@ -92,7 +92,7 @@ pushd $TEMP_DIR >/dev/null if whiptail --backtitle "Proxmox VE Helper Scripts" --title "Ubuntu 24.10 VM" --yesno "This will create a New Ubuntu 24.10 VM. Proceed?" 10 58; then : else - header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit + header_info && echo -e "${CROSS}${RD}User exited script${CL}\n" && exit fi function msg_info() { @@ -121,7 +121,7 @@ function check_root() { } function pve_check() { - if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then + if ! pveversion | grep -Eq "pve-manager/8\.[1-3](\.[0-9]+)*"; then msg_error "${CROSS}${RD}This version of Proxmox Virtual Environment is not supported" echo -e "Requires Proxmox Virtual Environment Version 8.1 or later." echo -e "Exiting..." @@ -226,7 +226,7 @@ function advanced_settings() { else exit-script fi - + if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GiB (e.g., 10, 20)" 8 58 "$DISK_SIZE" --title "DISK SIZE" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then DISK_SIZE=$(echo "$DISK_SIZE" | tr -d ' ') if [[ "$DISK_SIZE" =~ ^[0-9]+$ ]]; then @@ -241,7 +241,7 @@ function advanced_settings() { else exit-script fi - + if DISK_CACHE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "DISK CACHE" --radiolist "Choose" --cancel-button Exit-Script 10 58 2 \ "0" "None (Default)" ON \ "1" "Write Through" OFF \ @@ -423,7 +423,7 @@ msg_info "Retrieving the URL for the Ubuntu 24.10 Disk Image" URL=https://cloud-images.ubuntu.com/oracular/current/oracular-server-cloudimg-amd64.img sleep 2 msg_ok "${CL}${BL}${URL}${CL}" -wget -q --show-progress $URL +curl -fsSL -o "$(basename "$URL")" "$URL" echo -en "\e[1A\e[0K" FILE=$(basename $URL) msg_ok "Downloaded ${CL}${BL}${FILE}${CL}" @@ -493,11 +493,11 @@ EOF ) qm set "$VMID" -description "$DESCRIPTION" >/dev/null if [ -n "$DISK_SIZE" ]; then - msg_info "Resizing disk to $DISK_SIZE GB" - qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null + msg_info "Resizing disk to $DISK_SIZE GB" + qm resize $VMID scsi0 ${DISK_SIZE} >/dev/null else - msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" - qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null + msg_info "Using default disk size of $DEFAULT_DISK_SIZE GB" + qm resize $VMID scsi0 ${DEFAULT_DISK_SIZE} >/dev/null fi msg_ok "Created a Ubuntu 24.10 VM ${CL}${BL}(${HN})"