├── .github ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug_report.yaml │ └── config.yml └── pull_request_template.md ├── CHANGELOG.md ├── CODE-AUDIT.md ├── LICENSE ├── README.md ├── USER_SUBMITTED_GUIDES.md ├── ct ├── actualbudget.sh ├── adguard.sh ├── adventurelog.sh ├── agentdvr.sh ├── alpine-docker.sh ├── alpine-grafana.sh ├── alpine-nextcloud.sh ├── alpine-vaultwarden.sh ├── alpine-zigbee2mqtt.sh ├── alpine.sh ├── apache-cassandra.sh ├── apache-couchdb.sh ├── apt-cacher-ng.sh ├── archivebox.sh ├── aria2.sh ├── audiobookshelf.sh ├── autobrr.sh ├── bazarr.sh ├── blocky.sh ├── bunkerweb.sh ├── caddy.sh ├── calibre-web.sh ├── casaos.sh ├── changedetection.sh ├── channels.sh ├── cloudflared.sh ├── cockpit.sh ├── commafeed.sh ├── create_lxc.sh ├── cronicle.sh ├── daemonsync.sh ├── dashy.sh ├── debian.sh ├── deconz.sh ├── deluge.sh ├── docker.sh ├── dockge.sh ├── emby.sh ├── emqx.sh ├── ersatztv.sh ├── esphome.sh ├── evcc.sh ├── fenrus.sh ├── fhem.sh ├── flaresolverr.sh ├── flowiseai.sh ├── forgejo.sh ├── frigate.sh ├── gitea.sh ├── go2rtc.sh ├── gokapi.sh ├── gotify.sh ├── grafana.sh ├── grocy.sh ├── headscale.sh ├── heimdall-dashboard.sh ├── hivemq.sh ├── homarr.sh ├── homeassistant-core.sh ├── homeassistant.sh ├── homebox.sh ├── homebridge.sh ├── homepage.sh ├── homer.sh ├── hyperhdr.sh ├── hyperion.sh ├── influxdb.sh ├── iobroker.sh ├── iventoy.sh ├── jackett.sh ├── jellyfin.sh ├── jellyseerr.sh ├── kavita.sh ├── keycloak.sh ├── kubo.sh ├── lazylibrarian.sh ├── lidarr.sh ├── linkwarden.sh ├── lldap.sh ├── mafl.sh ├── magicmirror.sh ├── mariadb.sh ├── matterbridge.sh ├── mediamtx.sh ├── medusa.sh ├── memos.sh ├── meshcentral.sh ├── metube.sh ├── mongodb.sh ├── motioneye.sh ├── mqtt.sh ├── myspeed.sh ├── mysql.sh ├── n8n.sh ├── navidrome.sh ├── neo4j.sh ├── nextcloudpi.sh ├── nginxproxymanager.sh ├── nocodb.sh ├── node-red.sh ├── notifiarr.sh ├── ntfy.sh ├── nzbget.sh ├── octoprint.sh ├── ollama.sh ├── omada.sh ├── ombi.sh ├── omv.sh ├── openhab.sh ├── openobserve.sh ├── openwebui.sh ├── overseerr.sh ├── owncast.sh ├── pairdrop.sh ├── paperless-ngx.sh ├── pbs.sh ├── peanut.sh ├── petio.sh ├── photoprism.sh ├── pialert.sh ├── pihole.sh ├── pingvin.sh ├── plex.sh ├── pocketbase.sh ├── podman-homeassistant.sh ├── podman.sh ├── postgresql.sh ├── prometheus.sh ├── prowlarr.sh ├── qbittorrent.sh ├── rabbitmq.sh ├── radarr.sh ├── rdtclient.sh ├── readarr.sh ├── readeck.sh ├── redis.sh ├── rockylinux.sh ├── rtsptoweb.sh ├── runtipi.sh ├── sabnzbd.sh ├── scrypted.sh ├── sftpgo.sh ├── shinobi.sh ├── smokeping.sh ├── sonarr.sh ├── spoolman.sh ├── stirling-pdf.sh ├── syncthing.sh ├── tandoor.sh ├── tasmoadmin.sh ├── tautulli.sh ├── tdarr.sh ├── technitiumdns.sh ├── threadfin.sh ├── tianji.sh ├── traccar.sh ├── traefik.sh ├── transmission.sh ├── trilium.sh ├── ubuntu.sh ├── umami.sh ├── umbrel.sh ├── unifi.sh ├── unmanic.sh ├── uptimekuma.sh ├── vaultwarden.sh ├── wallos.sh ├── wastebin.sh ├── watchyourlan.sh ├── whisparr.sh ├── whoogle.sh ├── wikijs.sh ├── wireguard.sh ├── yunohost.sh ├── zabbix.sh ├── zigbee2mqtt.sh ├── zipline.sh ├── zoraxy.sh └── zwave-js-ui.sh ├── install ├── actualbudget-install.sh ├── adguard-install.sh ├── adventurelog-install.sh ├── agentdvr-install.sh ├── alpine-docker-install.sh ├── alpine-grafana-install.sh ├── alpine-install.sh ├── alpine-nextcloud-install.sh ├── alpine-vaultwarden-install.sh ├── alpine-zigbee2mqtt-install.sh ├── apache-cassandra-install.sh ├── apache-couchdb-install.sh ├── apt-cacher-ng-install.sh ├── archivebox-install.sh ├── aria2-install.sh ├── audiobookshelf-install.sh ├── autobrr-install.sh ├── bazarr-install.sh ├── blocky-install.sh ├── bunkerweb-install.sh ├── caddy-install.sh ├── calibre-web-install.sh ├── casaos-install.sh ├── changedetection-install.sh ├── channels-install.sh ├── cloudflared-install.sh ├── cockpit-install.sh ├── commafeed-install.sh ├── cronicle-install.sh ├── daemonsync-install.sh ├── dashy-install.sh ├── debian-install.sh ├── deconz-install.sh ├── deluge-install.sh ├── docker-install.sh ├── dockge-install.sh ├── emby-install.sh ├── emqx-install.sh ├── ersatztv-install.sh ├── esphome-install.sh ├── evcc-install.sh ├── fenrus-install.sh ├── fhem-install.sh ├── flaresolverr-install.sh ├── flowiseai-install.sh ├── forgejo-install.sh ├── frigate-install.sh ├── gitea-install.sh ├── go2rtc-install.sh ├── gokapi-install.sh ├── gotify-install.sh ├── grafana-install.sh ├── grocy-install.sh ├── headscale-install.sh ├── heimdall-dashboard-install.sh ├── hivemq-install.sh ├── homarr-install.sh ├── homeassistant-core-install.sh ├── homeassistant-install.sh ├── homebox-install.sh ├── homebridge-install.sh ├── homepage-install.sh ├── homer-install.sh ├── hyperhdr-install.sh ├── hyperion-install.sh ├── influxdb-install.sh ├── iobroker-install.sh ├── iventoy-install.sh ├── jackett-install.sh ├── jellyfin-install.sh ├── jellyseerr-install.sh ├── kavita-install.sh ├── keycloak-install.sh ├── kubo-install.sh ├── lazylibrarian-install.sh ├── lidarr-install.sh ├── linkwarden-install.sh ├── lldap-install.sh ├── mafl-install.sh ├── magicmirror-install.sh ├── mariadb-install.sh ├── matterbridge-install.sh ├── mediamtx-install.sh ├── medusa-install.sh ├── memos-install.sh ├── meshcentral-install.sh ├── metube-install.sh ├── mongodb-install.sh ├── motioneye-install.sh ├── mqtt-install.sh ├── myspeed-install.sh ├── mysql-install.sh ├── n8n-install.sh ├── navidrome-install.sh ├── neo4j-install.sh ├── nextcloudpi-install.sh ├── nginxproxymanager-install.sh ├── nocodb-install.sh ├── node-red-install.sh ├── notifiarr-install.sh ├── ntfy-install.sh ├── nzbget-install.sh ├── octoprint-install.sh ├── ollama-install.sh ├── omada-install.sh ├── ombi-install.sh ├── omv-install.sh ├── openhab-install.sh ├── openobserve-install.sh ├── openwebui-install.sh ├── overseerr-install.sh ├── owncast-install.sh ├── pairdrop-install.sh ├── paperless-ngx-install.sh ├── pbs-install.sh ├── peanut-install.sh ├── petio-install.sh ├── photoprism-install.sh ├── pialert-install.sh ├── pihole-install.sh ├── pingvin-install.sh ├── plex-install.sh ├── pocketbase-install.sh ├── podman-homeassistant-install.sh ├── podman-install.sh ├── postgresql-install.sh ├── prometheus-install.sh ├── prowlarr-install.sh ├── qbittorrent-install.sh ├── rabbitmq-install.sh ├── radarr-install.sh ├── rdtclient-install.sh ├── readarr-install.sh ├── readeck-install.sh ├── redis-install.sh ├── rtsptoweb-install.sh ├── runtipi-install.sh ├── sabnzbd-install.sh ├── scrypted-install.sh ├── sftpgo-install.sh ├── shinobi-install.sh ├── smokeping-install.sh ├── sonarr-install.sh ├── spoolman-install.sh ├── stirling-pdf-install.sh ├── syncthing-install.sh ├── tandoor-install.sh ├── tasmoadmin-install.sh ├── tautulli-install.sh ├── tdarr-install.sh ├── technitiumdns-install.sh ├── threadfin-install.sh ├── tianji-install.sh ├── traccar-install.sh ├── traefik-install.sh ├── transmission-install.sh ├── trilium-install.sh ├── ubuntu-install.sh ├── umami-install.sh ├── umbrel-install.sh ├── unifi-install.sh ├── unmanic-install.sh ├── uptimekuma-install.sh ├── vaultwarden-install.sh ├── wallos-install.sh ├── wastebin-install.sh ├── watchyourlan-install.sh ├── whisparr-install.sh ├── whoogle-install.sh ├── wikijs-install.sh ├── wireguard-install.sh ├── yunohost-install.sh ├── zabbix-install.sh ├── zigbee2mqtt-install.sh ├── zipline-install.sh ├── zoraxy-install.sh └── zwave-js-ui-install.sh ├── misc ├── add-netbird-lxc.sh ├── add-tailscale-lxc.sh ├── all-templates.sh ├── alpine-install.func ├── build.func ├── clean-lxcs.sh ├── clean.sh ├── code-server.sh ├── container-restore-from-backup.sh ├── copy-data │ ├── README.md │ ├── home-assistant-container-copy-data-home-assistant-container.sh │ ├── home-assistant-container-copy-data-home-assistant-core.sh │ ├── home-assistant-container-copy-data-podman-home-assistant.sh │ ├── home-assistant-core-copy-data-home-assistant-container.sh │ ├── home-assistant-core-copy-data-home-assistant-core.sh │ ├── plex-copy-data-plex.sh │ ├── podman-home-assistant-copy-data-home-assistant-container.sh │ ├── z2m-copy-data-z2m.sh │ └── zwavejs2mqtt-copy-data-zwavejsui.sh ├── core-restore-from-backup.sh ├── cron-update-lxcs.sh ├── crowdsec.sh ├── daemonsync_2.2.0.0059_amd64.deb ├── filebrowser.sh ├── frigate-support.sh ├── fstrim.sh ├── glances.sh ├── host-backup.sh ├── hw-acceleration.sh ├── images │ ├── cpu.png │ ├── daemon-sync.png │ ├── filebrowser.png │ ├── haos.png │ ├── heimdall.png │ ├── logo-81x112.png │ ├── logo.png │ ├── monitor.png │ ├── nocodb.png │ ├── openobsecure.png │ ├── photoprism.png │ ├── pimox.png │ ├── processor.png │ └── whoogle.png ├── install.func ├── kernel-clean.sh ├── kernel-pin.sh ├── microcode.sh ├── monitor-all.sh ├── netdata.sh ├── olivetin.sh ├── pbs3-upgrade.sh ├── post-pbs-install.sh ├── post-pve-install.sh ├── pve8-upgrade.sh ├── pyenv.sh ├── scaling-governor.sh ├── update-lxcs-cron.sh ├── update-lxcs.sh ├── usb-passthrough.sh └── webmin.sh ├── turnkey └── turnkey.sh └── vm ├── debian-vm.sh ├── haos-vm.sh ├── mikrotik-routeros.sh ├── nextcloud-vm.sh ├── openwrt.sh ├── owncloud-vm.sh ├── pimox-haos-vm.sh ├── ubuntu2204-vm.sh └── ubuntu2404-vm.sh /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 |
6 |

Contributing to Proxmox VE Helper Scripts

7 | 8 | Everybody is invited and welcome to contribute to Proxmox VE Helper Scripts. 9 | 10 | - Pull requests submitted against [**main**](https://github.com/tteck/Proxmox/tree/main) are meticulously scrutinized, so please do not take it personally if the project maintainer rejects your request. By adhering to the established patterns and conventions throughout the codebase, you greatly increase the likelihood that your changes will get merged into [**main**](https://github.com/tteck/Proxmox/tree/main). 11 | 12 | - It is important to stress that complaining about a decision after it has been made is not productive behavior for the pull request submitter. It is crucial for all contributors to respect the decision-making process and collaborate effectively towards achieving the best possible outcome for the project. 13 | 14 | - The repository will only accept Alpine applications that make use of the Alpine Package Keeper. 15 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | ko_fi: proxmoxhelperscripts 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Helper-Scripts Community Support 4 | url: https://github.com/tteck/Proxmox/discussions 5 | about: Please ask and answer questions here. 6 | -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | > [!NOTE] 2 | I am meticulous when it comes to merging code into the main branch, so please understand that I may reject pull requests that do not meet the project's standards. It's never personal. Also, game-related scripts have a lower chance of being merged. 3 | 4 | ## Description 5 | 6 | Provide a summary of the changes made and/or reference the issue being addressed. 7 | 8 | Fixes # (issue) 9 | 10 | ## Type of change 11 | 12 | Please check the relevant option(s): 13 | 14 | - [ ] Bug fix (non-breaking change that resolves an issue) 15 | - [ ] New feature (non-breaking change that adds functionality) 16 | - [ ] Breaking change (a fix or feature that would cause existing functionality to change unexpectedly) 17 | - [ ] New script (a fully functional and thoroughly tested script or set of scripts.) 18 | - [ ] Self-review performed (I have reviewed my code, ensuring it follows established patterns and conventions) 19 | - [ ] Documentation update required (this change requires an update to the documentation) 20 | 21 | -------------------------------------------------------------------------------- /CODE-AUDIT.md: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 |

Exploring the Scripts and Steps Involved in an Application LXC Installation

5 | 6 | 1) [adguard.sh](https://github.com/tteck/Proxmox/blob/main/ct/adguard.sh): This script collects system parameters. (Also holds the function to update the application.) 7 | 2) [build.func](https://github.com/tteck/Proxmox/blob/main/misc/build.func): Adds user settings and integrates collected information. 8 | 3) [create_lxc.sh](https://github.com/tteck/Proxmox/blob/main/ct/create_lxc.sh): Constructs the LXC container. 9 | 4) [adguard-install.sh](https://github.com/tteck/Proxmox/blob/main/install/adguard-install.sh): Executes functions from [install.func](https://github.com/tteck/Proxmox/blob/main/misc/install.func), and installs the application. 10 | 5) [adguard.sh](https://github.com/tteck/Proxmox/blob/main/ct/adguard.sh) (again): To display the completion message. 11 | 12 | The installation process uses reusable scripts: [build.func](https://github.com/tteck/Proxmox/blob/main/misc/build.func), [create_lxc.sh](https://github.com/tteck/Proxmox/blob/main/ct/create_lxc.sh), and [install.func](https://github.com/tteck/Proxmox/blob/main/misc/install.func), which are not specific to any particular application. 13 | 14 | To gain a better understanding, focus on reviewing [adguard-install.sh](https://github.com/tteck/Proxmox/blob/main/install/adguard-install.sh). This script contains the commands and configurations for installing and configuring AdGuard Home within the LXC container. 15 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021-2024 tteck 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ct/agentdvr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ___ __ ____ _ ______ 12 | / | ____ ____ ____ / /_/ __ \ | / / __ \ 13 | / /| |/ __ `/ _ \/ __ \/ __/ / / / | / / /_/ / 14 | / ___ / /_/ / __/ / / / /_/ /_/ /| |/ / _, _/ 15 | /_/ |_\__, /\___/_/ /_/\__/_____/ |___/_/ |_| 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="AgentDVR" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="ubuntu" 26 | var_version="22.04" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="0" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/agentdvr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | echo -e "${APP}${CL} should be reachable by going to the following URL. 68 | ${BL}http://${IP}:8090${CL} \n" 69 | -------------------------------------------------------------------------------- /ct/alpine.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ___ __ _ 12 | / | / /___ (_)___ ___ 13 | / /| | / / __ \/ / __ \/ _ \ 14 | / ___ |/ / /_/ / / / / / __/ 15 | /_/ |_/_/ .___/_/_/ /_/\___/ 16 | /_/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Alpine" 23 | var_disk="0.1" 24 | var_cpu="1" 25 | var_ram="512" 26 | var_os="alpine" 27 | var_version="3.19" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="-password alpine" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 1 \ 58 | "1" "Check for Alpine Updates" ON \ 59 | 3>&1 1>&2 2>&3) 60 | 61 | header_info 62 | if [ "$UPD" == "1" ]; then 63 | apk update && apk upgrade 64 | exit; 65 | fi 66 | } 67 | 68 | start 69 | build_container 70 | description 71 | 72 | msg_ok "Completed Successfully!\n" 73 | -------------------------------------------------------------------------------- /ct/aria2.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ___ _ ___ 12 | / | _____(_)___ |__ \ 13 | / /| | / ___/ / __ `/_/ / 14 | / ___ |/ / / / /_/ / __/ 15 | /_/ |_/_/ /_/\__,_/____/ 16 | EOF 17 | } 18 | header_info 19 | echo -e "Loading..." 20 | APP="Aria2" 21 | var_disk="8" 22 | var_cpu="2" 23 | var_ram="1028" 24 | var_os="debian" 25 | var_version="12" 26 | variables 27 | color 28 | catch_errors 29 | 30 | function default_settings() { 31 | CT_TYPE="1" 32 | PW="" 33 | CT_ID=$NEXTID 34 | HN=$NSAPP 35 | DISK_SIZE="$var_disk" 36 | CORE_COUNT="$var_cpu" 37 | RAM_SIZE="$var_ram" 38 | BRG="vmbr0" 39 | NET="dhcp" 40 | GATE="" 41 | APT_CACHER="" 42 | APT_CACHER_IP="" 43 | DISABLEIP6="no" 44 | MTU="" 45 | SD="" 46 | NS="" 47 | MAC="" 48 | VLAN="" 49 | SSH="no" 50 | VERB="no" 51 | echo_default 52 | } 53 | 54 | function update_script() { 55 | header_info 56 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 57 | msg_info "Updating $APP LXC" 58 | apt-get update &>/dev/null 59 | apt-get -y upgrade &>/dev/null 60 | msg_ok "Updated $APP LXC" 61 | exit 62 | } 63 | 64 | start 65 | build_container 66 | description 67 | 68 | msg_ok "Completed Successfully!\n" 69 | echo -e "${APP} should be reachable by going to the following URL. 70 | ${BL}http://${IP}:6880${CL}" 71 | -------------------------------------------------------------------------------- /ct/bazarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ 12 | / __ )____ _____ ____ ___________ 13 | / __ / __ `/_ / / __ `/ ___/ ___/ 14 | / /_/ / /_/ / / /_/ /_/ / / / / 15 | /_____/\__,_/ /___/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Bazarr" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var/lib/bazarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:6767${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/blocky.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ __ 12 | / __ )/ /___ _____/ /____ __ 13 | / __ / / __ \/ ___/ //_/ / / / 14 | / /_/ / / /_/ / /__/ ,< / /_/ / 15 | /_____/_/\____/\___/_/|_|\__, / 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Blocky" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/caddy.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ __ __ 12 | / ____/___ _____/ /___/ /_ __ 13 | / / / __ `/ __ / __ / / / / 14 | / /___/ /_/ / /_/ / /_/ / /_/ / 15 | \____/\__,_/\__,_/\__,_/\__, / 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Caddy" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /etc/caddy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/casaos.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ ____ _____ 12 | / ____/___ __________ _/ __ \/ ___/ 13 | / / / __ `/ ___/ __ `/ / / /\__ \ 14 | / /___/ /_/ (__ ) /_/ / /_/ /___/ / 15 | \____/\__,_/____/\__,_/\____//____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="CasaOS" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated ${APP} LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} Setup should be reachable by going to the following URL. 71 | ${BL}http://${IP} ${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/cloudflared.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ________ ________ __ 12 | / ____/ /___ __ ______/ / __/ /___ _________ ____/ / 13 | / / / / __ \/ / / / __ / /_/ / __ `/ ___/ _ \/ __ / 14 | / /___/ / /_/ / /_/ / /_/ / __/ / /_/ / / / __/ /_/ / 15 | \____/_/\____/\__,_/\__,_/_/ /_/\__,_/_/ \___/\__,_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Cloudflared" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/debian.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ _ 12 | / __ \___ / /_ (_)___ ____ 13 | / / / / _ \/ __ \/ / __ `/ __ \ 14 | / /_/ / __/ /_/ / / /_/ / / / / 15 | /_____/\___/_.___/_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Debian" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/deconz.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ __________ _ _______ 12 | ____/ /__ / ____/ __ \/ | / /__ / 13 | / __ / _ \/ / / / / / |/ / / / 14 | / /_/ / __/ /___/ /_/ / /| / / /__ 15 | \__,_/\___/\____/\____/_/ |_/ /____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="deCONZ" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="0" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/apt/sources.list.d/deconz.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}${CL}\n" 72 | -------------------------------------------------------------------------------- /ct/deluge.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \___ / /_ ______ ____ 13 | / / / / _ \/ / / / / __ `/ _ \ 14 | / /_/ / __/ / /_/ / /_/ / __/ 15 | /_____/\___/_/\__,_/\__, /\___/ 16 | /____/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Deluge" 23 | var_disk="4" 24 | var_cpu="2" 25 | var_ram="2048" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -f /etc/systemd/system/deluged.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating $APP LXC" 60 | apt-get update &>/dev/null 61 | pip3 install deluge[all] --upgrade 62 | msg_ok "Updated $APP LXC" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}:8112${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/docker.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \____ _____/ /_ __ _____ 13 | / / / / __ \/ ___/ //_/ _ \/ ___/ 14 | / /_/ / /_/ / /__/ ,< / __/ / 15 | /_____/\____/\___/_/|_|\___/_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Docker" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated ${APP} LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/dockge.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \____ _____/ /______ ____ 13 | / / / / __ \/ ___/ //_/ __ `/ _ \ 14 | / /_/ / /_/ / /__/ ,< / /_/ / __/ 15 | /_____/\____/\___/_/|_|\__, /\___/ 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Dockge" 22 | var_disk="18" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/dockge ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP}" 59 | cd /opt/dockge 60 | docker compose pull 61 | docker compose up -d 62 | msg_ok "Updated ${APP}" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}:5001${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/emqx.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ________ _______ _ __ 12 | / ____/ |/ / __ \ | |/ / 13 | / __/ / /|_/ / / / / | / 14 | / /___/ / / / /_/ / / | 15 | /_____/_/ /_/\___\_\/_/|_| 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="EMQX" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} Setup should be reachable by going to the following URL. 71 | ${BL}http://${IP}:18083${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/evcc.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: MickLesk (Canbiz) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ___ _ ____________ 12 | / _ \ | / / ___/ ___/ 13 | / __/ |/ / /__/ /__ 14 | \___/|___/\___/\___/ 15 | 16 | EOF 17 | } 18 | header_info 19 | echo -e "Loading..." 20 | APP="evcc" 21 | var_disk="4" 22 | var_cpu="1" 23 | var_ram="1024" 24 | var_os="debian" 25 | var_version="12" 26 | variables 27 | color 28 | catch_errors 29 | 30 | function default_settings() { 31 | CT_TYPE="1" 32 | PW="" 33 | CT_ID=$NEXTID 34 | HN=$NSAPP 35 | DISK_SIZE="$var_disk" 36 | CORE_COUNT="$var_cpu" 37 | RAM_SIZE="$var_ram" 38 | BRG="vmbr0" 39 | NET="dhcp" 40 | GATE="" 41 | APT_CACHER="" 42 | APT_CACHER_IP="" 43 | DISABLEIP6="no" 44 | MTU="" 45 | SD="" 46 | NS="" 47 | MAC="" 48 | VLAN="" 49 | SSH="no" 50 | VERB="no" 51 | echo_default 52 | } 53 | 54 | function update_script() { 55 | header_info 56 | if [[ ! -f /etc/apt/sources.list.d/evcc-stable.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 57 | msg_info "Updating evcc LXC" 58 | apt update &>/dev/null 59 | apt --only-upgrade install -y evcc &>/dev/null 60 | msg_ok "Updated Successfully" 61 | exit 62 | } 63 | 64 | start 65 | build_container 66 | description 67 | 68 | msg_ok "Completed Successfully!\n" 69 | echo -e "${APP} Setup should be reachable by going to the following URL. 70 | ${BL}http://${IP}:7070${CL} \n" 71 | -------------------------------------------------------------------------------- /ct/fhem.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ________ 12 | / ____/ /_ ___ ____ ___ 13 | / /_ / __ \/ _ \/ __ `__ \ 14 | / __/ / / / / __/ / / / / / 15 | /_/ /_/ /_/\___/_/ /_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Fhem" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/systemd/system/fhem.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8083${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/gokapi.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ __ _ 12 | / ____/___ / /______ _____ (_) 13 | / / __/ __ \/ //_/ __ `/ __ \/ / 14 | / /_/ / /_/ / ,< / /_/ / /_/ / / 15 | \____/\____/_/|_|\__,_/ .___/_/ 16 | /_/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Gokapi" 22 | var_disk="4" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/gokapi ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | echo -e "${APP} Setup should be reachable by going to the following URL. 68 | ${BL}http://${IP}:53842/setup${CL} \n" 69 | -------------------------------------------------------------------------------- /ct/grafana.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ ____ 12 | / ____/________ _/ __/___ _____ ____ _ 13 | / / __/ ___/ __ / /_/ __ / __ \/ __ / 14 | / /_/ / / / /_/ / __/ /_/ / / / / /_/ / 15 | \____/_/ \__,_/_/ \__,_/_/ /_/\__,_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Grafana" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP}" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:3000${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/hivemq.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ___ __ _______ ____________ 12 | / / / (_) _____ / |/ / __ \ / ____/ ____/ 13 | / /_/ / / | / / _ \/ /|_/ / / / / / / / __/ 14 | / __ / /| |/ / __/ / / / /_/ / / /___/ /___ 15 | /_/ /_/_/ |___/\___/_/ /_/\___\_\ \____/_____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="HiveMQ" 22 | var_disk="4" 23 | var_cpu="1" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | -------------------------------------------------------------------------------- /ct/influxdb.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ ______ ____ ____ 12 | / _/___ / __/ /_ ___ __/ __ \/ __ ) 13 | / // __ \/ /_/ / / / / |/_/ / / / __ | 14 | _/ // / / / __/ / /_/ /> /dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/iobroker.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | _ ____ __ 12 | (_)___ / __ )_________ / /_____ _____ 13 | / / __ \/ __ / ___/ __ \/ //_/ _ \/ ___/ 14 | / / /_/ / /_/ / / / /_/ / ,< / __/ / 15 | /_/\____/_____/_/ \____/_/|_|\___/_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="ioBroker" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/iobroker ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8081${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/iventoy.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | _ _ __ __ 12 | (_) | / /__ ____ / /_____ __ __ 13 | / /| | / / _ \/ __ \/ __/ __ \/ / / / 14 | / / | |/ / __/ / / / /_/ /_/ / /_/ / 15 | /_/ |___/\___/_/ /_/\__/\____/\__, / 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="iVentoy" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="0" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | if [[ ! -d /opt/iventoy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 57 | msg_error "There is currently no update path available." 58 | exit 59 | } 60 | 61 | start 62 | build_container 63 | description 64 | 65 | msg_ok "Completed Successfully!\n" 66 | echo -e "${APP} should be reachable by going to the following URL. 67 | ${BL}http://${IP}:26000/ ${CL} \n" -------------------------------------------------------------------------------- /ct/jellyfin.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ____ _____ 12 | / /__ / / /_ __/ __(_)___ 13 | __ / / _ \/ / / / / / /_/ / __ \ 14 | / /_/ / __/ / / /_/ / __/ / / / / 15 | \____/\___/_/_/\__, /_/ /_/_/ /_/ 16 | /____/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Jellyfin" 23 | var_disk="8" 24 | var_cpu="2" 25 | var_ram="2048" 26 | var_os="ubuntu" 27 | var_version="22.04" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /usr/lib/jellyfin ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating ${APP} LXC" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated ${APP} LXC" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}:8096${CL}\n" 73 | -------------------------------------------------------------------------------- /ct/lidarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ _ __ 12 | / / (_)___/ /___ __________ 13 | / / / / __ / __ `/ ___/ ___/ 14 | / /___/ / /_/ / /_/ / / / / 15 | /_____/_/\__,_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Lidarr" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var/lib/lidarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8686${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/lldap.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # Co-Author: remz1337 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | ____ __ 13 | / / /___/ /___ _____ 14 | / / / __ / __ `/ __ \ 15 | / / / /_/ / /_/ / /_/ / 16 | /_/_/\__,_/\__,_/ .___/ 17 | /_/ 18 | 19 | EOF 20 | } 21 | header_info 22 | echo -e "Loading..." 23 | APP="lldap" 24 | var_disk="4" 25 | var_cpu="1" 26 | var_ram="512" 27 | var_os="debian" 28 | var_version="12" 29 | variables 30 | color 31 | catch_errors 32 | 33 | function default_settings() { 34 | CT_TYPE="1" 35 | PW="" 36 | CT_ID=$NEXTID 37 | HN=$NSAPP 38 | DISK_SIZE="$var_disk" 39 | CORE_COUNT="$var_cpu" 40 | RAM_SIZE="$var_ram" 41 | BRG="vmbr0" 42 | NET="dhcp" 43 | GATE="" 44 | APT_CACHER="" 45 | APT_CACHER_IP="" 46 | DISABLEIP6="no" 47 | MTU="" 48 | SD="" 49 | NS="" 50 | MAC="" 51 | VLAN="" 52 | SSH="no" 53 | VERB="no" 54 | echo_default 55 | } 56 | 57 | function update_script() { 58 | header_info 59 | if [[ ! -f /etc/systemd/system/lldap.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 60 | msg_info "Updating $APP" 61 | apt update 62 | apt upgrade -y lldap 63 | msg_ok "Updated $APP" 64 | exit 65 | } 66 | 67 | start 68 | build_container 69 | description 70 | 71 | msg_ok "Completed Successfully!\n" 72 | echo -e "${APP} should be reachable by going to the following URL. 73 | ${BL}http://${IP}:17170${CL} \n" 74 | -------------------------------------------------------------------------------- /ct/mariadb.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ___ _ ____ ____ 12 | / |/ /___ ______(_)___ _/ __ \/ __ ) 13 | / /|_/ / __ / ___/ / __ / / / / __ | 14 | / / / / /_/ / / / / /_/ / /_/ / /_/ / 15 | /_/ /_/\__,_/_/ /_/\__,_/_____/_____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="MariaDB" 22 | var_disk="4" 23 | var_cpu="1" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/apt/sources.list.d/mariadb.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/mediamtx.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 4 | # Copyright (c) 2021-2024 tteck 5 | # Author: tteck (tteckster) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | __ ___ ___ __ __________ __ 13 | / |/ /__ ____/ (_)___ _/ |/ /_ __/ |/ / 14 | / /|_/ / _ \/ __ / / __ `/ /|_/ / / / | / 15 | / / / / __/ /_/ / / /_/ / / / / / / / | 16 | /_/ /_/\___/\__,_/_/\__,_/_/ /_/ /_/ /_/|_| 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="MediaMTX" 23 | var_disk="4" 24 | var_cpu="2" 25 | var_ram="2048" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /opt/mediamtx/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | 60 | msg_error "There is currently no update path available." 61 | exit 62 | } 63 | 64 | start 65 | build_container 66 | description 67 | 68 | msg_ok "Completed Successfully!\n" 69 | -------------------------------------------------------------------------------- /ct/medusa.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ___ __ 12 | / |/ /__ ____/ /_ ___________ _ 13 | / /|_/ / _ \/ __ / / / / ___/ __ `/ 14 | / / / / __/ /_/ / /_/ (__ ) /_/ / 15 | /_/ /_/\___/\__,_/\__,_/____/\__,_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Medusa" 22 | var_disk="6" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/medusa ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP}" 59 | systemctl stop medusa.service 60 | /opt/medusa 61 | git pull 62 | systemctl start medusa.service 63 | msg_ok "Successfully Updated ${APP}" 64 | exit 65 | } 66 | 67 | start 68 | build_container 69 | description 70 | 71 | msg_ok "Completed Successfully!\n" 72 | echo -e "${APP} should be reachable by going to the following URL. 73 | ${BL}http://${IP}:8081${CL} \n" 74 | -------------------------------------------------------------------------------- /ct/mongodb.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ___ ____ ____ 12 | / |/ /___ ____ ____ _____ / __ \/ __ ) 13 | / /|_/ / __ \/ __ \/ __ `/ __ \/ / / / __ | 14 | / / / / /_/ / / / / /_/ / /_/ / /_/ / /_/ / 15 | /_/ /_/\____/_/ /_/\__, /\____/_____/_____/ 16 | /____/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="MongoDB" 22 | var_disk="4" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/apt/sources.list.d/mongodb-org-7.0.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/mqtt.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ___ ____ _ ____________ 12 | / |/ /___ _____/ __ \__ __(_)_ __/_ __/___ 13 | / /|_/ / __ \/ ___/ / / / / / / / / / / / / __ \ 14 | / / / / /_/ (__ ) /_/ / /_/ / / / / / / / /_/ / 15 | /_/ /_/\____/____/\___\_\__,_/_/ /_/ /_/ \____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="MQTT" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/mosquitto/conf.d/default.conf ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/mysql.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: MickLesk (Canbiz) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | __ ___ _____ ____ __ 13 | / |/ /_ __/ ___// __ \ / / 14 | / /|_/ / / / /\__ \/ / / / / / 15 | / / / / /_/ /___/ / /_/ / / /___ 16 | /_/ /_/\__, //____/\___\_\/_____/ 17 | /____/ 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="MySQL" 23 | var_disk="4" 24 | var_cpu="1" 25 | var_ram="1024" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -f /usr/share/keyrings/mysql.gpg ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating ${APP} LXC" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated Successfully" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | -------------------------------------------------------------------------------- /ct/neo4j.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | _ __ __ __ _ 13 | / | / /__ ____ / // / (_) 14 | / |/ / _ \/ __ \/ // /_/ / 15 | / /| / __/ /_/ /__ __/ / 16 | /_/ |_/\___/\____/ /_/_/ / 17 | /___/ 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Neo4j" 23 | var_disk="4" 24 | var_cpu="1" 25 | var_ram="1024" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /etc/neo4j ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating ${APP}" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated Successfully" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} Browser should be reachable by going to the following URL. 72 | ${BL}http://${IP}:7474${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/notifiarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | _ __ __ _ _____ 12 | / | / /___ / /_(_) __(_)___ ___________ 13 | / |/ / __ \/ __/ / /_/ / __ `/ ___/ ___/ 14 | / /| / /_/ / /_/ / __/ / /_/ / / / / 15 | /_/ |_/\____/\__/_/_/ /_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Notifiarr" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/apt/sources.list.d/golift.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:5454${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/ntfy.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ____ 12 | ____ / /_/ __/_ __ 13 | / __ \/ __/ /_/ / / / 14 | / / / / /_/ __/ /_/ / 15 | /_/ /_/\__/_/ \__, / 16 | /____/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="ntfy" 23 | var_disk="2" 24 | var_cpu="1" 25 | var_ram="512" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating $APP LXC" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated $APP LXC" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/nzbget.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | _ _______ ____ ______ __ 13 | / | / /__ / / __ )/ ____/__ / /_ 14 | / |/ / / / / __ / / __/ _ \/ __/ 15 | / /| / / /__/ /_/ / /_/ / __/ /_ 16 | /_/ |_/ /____/_____/\____/\___/\__/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="NZBGet" 23 | var_disk="4" 24 | var_cpu="2" 25 | var_ram="2048" 26 | var_os="debian" 27 | var_version="12" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -f /lib/systemd/system/nzbget.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating $APP LXC" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated $APP LXC" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}:6789${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/ollama.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | function header_info { 10 | clear 11 | cat <<"EOF" 12 | ____ ____ 13 | / __ \/ / /___ _____ ___ ____ _ 14 | / / / / / / __ `/ __ `__ \/ __ `/ 15 | / /_/ / / / /_/ / / / / / / /_/ / 16 | \____/_/_/\__,_/_/ /_/ /_/\__,_/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Ollama" 23 | var_disk="24" 24 | var_cpu="4" 25 | var_ram="4096" 26 | var_os="ubuntu" 27 | var_version="22.04" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /opt/ollama ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating ${APP}" 60 | apt-get update &>/dev/null 61 | apt-get -y upgrade &>/dev/null 62 | msg_ok "Updated Successfully" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}:11434${CL} \n" 73 | -------------------------------------------------------------------------------- /ct/petio.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ _ 12 | / __ \___ / /_(_)___ 13 | / /_/ / _ \/ __/ / __ \ 14 | / ____/ __/ /_/ / /_/ / 15 | /_/ \___/\__/_/\____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Petio" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="ubuntu" 26 | var_version="20.04" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/Petio ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP" 59 | systemctl stop petio.service 60 | wget https://petio.tv/releases/latest -O petio-latest.zip 61 | unzip petio-latest.zip -d /opt/Petio 62 | systemctl start petio.service 63 | msg_ok "Updated $APP" 64 | exit 65 | } 66 | 67 | start 68 | build_container 69 | description 70 | 71 | msg_ok "Completed Successfully!\n" 72 | echo -e "${APP} should be reachable by going to the following URL. 73 | ${BL}http://${IP}:7777${CL} \n" 74 | -------------------------------------------------------------------------------- /ct/pialert.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ _ ___ __ __ 12 | / __ \(_) / | / /__ _____/ /_ 13 | / /_/ / / / /| | / / _ \/ ___/ __/ 14 | / ____/ / / ___ |/ / __/ / / /_ 15 | /_/ /_(_)_/ |_/_/\___/_/ \__/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="PiAlert" 22 | var_disk="3" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/pialert ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | bash -c "$(wget -qLO - https://github.com/leiweibau/Pi.Alert/raw/main/install/pialert_update.sh)" -s --lxc 59 | msg_ok "Updated $APP" 60 | exit 61 | } 62 | 63 | start 64 | build_container 65 | description 66 | 67 | msg_ok "Completed Successfully!\n" 68 | echo -e "${APP} should be reachable by going to the following URL. 69 | ${BL}http://${IP}/pialert/${CL} \n" 70 | -------------------------------------------------------------------------------- /ct/pihole.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ ____ __ ______ __ ______ 12 | / __ \/ _/ / / / / __ \/ / / ____/ 13 | / /_/ // /___/ /_/ / / / / / / __/ 14 | / ____// /___/ __ / /_/ / /___/ /___ 15 | /_/ /___/ /_/ /_/\____/_____/_____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Pihole" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /etc/pihole ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP}" 59 | set +e 60 | pihole -up 61 | msg_ok "Updated ${APP}" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}/admin${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/pocketbase.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ __ __ 12 | / __ \____ _____/ /_____ / /_/ /_ ____ _________ 13 | / /_/ / __ \/ ___/ //_/ _ \/ __/ __ \/ __ `/ ___/ _ \ 14 | / ____/ /_/ / /__/ ,< / __/ /_/ /_/ / /_/ (__ ) __/ 15 | /_/ \____/\___/_/|_|\___/\__/_.___/\__,_/____/\___/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Pocketbase" 22 | var_disk="8" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | start 56 | build_container 57 | description 58 | 59 | msg_ok "Completed Successfully!\n" 60 | echo -e "${APP} should be reachable by going to the following URL. 61 | ${BL}http://${IP}:8080/_${CL}" 62 | -------------------------------------------------------------------------------- /ct/podman.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \____ ____/ /___ ___ ____ _____ 13 | / /_/ / __ \/ __ / __ `__ \/ __ `/ __ \ 14 | / ____/ /_/ / /_/ / / / / / / /_/ / / / / 15 | /_/ \____/\__,_/_/ /_/ /_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Podman" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/containers/registries.conf ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated Successfully" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/prowlarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \_________ _ __/ /___ __________ 13 | / /_/ / ___/ __ \ | /| / / / __ `/ ___/ ___/ 14 | / ____/ / / /_/ / |/ |/ / / /_/ / / / / 15 | /_/ /_/ \____/|__/|__/_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Prowlarr" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var/lib/prowlarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | echo -e "${APP} should be reachable by going to the following URL. 68 | ${BL}http://${IP}:9696${CL} \n" 69 | -------------------------------------------------------------------------------- /ct/radarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ 12 | / __ \____ _____/ /___ __________ 13 | / /_/ / __ `/ __ / __ `/ ___/ ___/ 14 | / _, _/ /_/ / /_/ / /_/ / / / / 15 | /_/ |_|\__,_/\__,_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Radarr" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var/lib/radarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | echo -e "${APP} should be reachable by going to the following URL. 68 | ${BL}http://${IP}:7878${CL} \n" 69 | -------------------------------------------------------------------------------- /ct/redis.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ ___ 12 | / __ \___ ____/ (_)____ 13 | / /_/ / _ \/ __ / / ___/ 14 | / _, _/ __/ /_/ / (__ ) 15 | /_/ |_|\___/\__,_/_/____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Redis" 22 | var_disk="4" 23 | var_cpu="1" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | VERBOSE="yes" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -f /lib/systemd/system/redis-server.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_error "There is currently no update path available." 60 | exit 61 | } 62 | 63 | start 64 | build_container 65 | description 66 | 67 | msg_ok "Completed Successfully!\n" 68 | -------------------------------------------------------------------------------- /ct/rockylinux.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ __ _ 12 | / __ \____ _____/ /____ __ / / (_)___ __ ___ __ 13 | / /_/ / __ \/ ___/ //_/ / / / / / / / __ \/ / / / |/_/ 14 | / _, _/ /_/ / /__/ ,< / /_/ / / /___/ / / / / /_/ /> < 15 | /_/ |_|\____/\___/_/|_|\__, / /_____/_/_/ /_/\__,_/_/|_| 16 | /____/ 17 | 18 | EOF 19 | } 20 | header_info 21 | echo -e "Loading..." 22 | APP="Rocky Linux" 23 | var_disk="1" 24 | var_cpu="1" 25 | var_ram="512" 26 | var_os="rockylinux" 27 | var_version="9" 28 | variables 29 | color 30 | catch_errors 31 | 32 | function default_settings() { 33 | CT_TYPE="1" 34 | PW="-password rockylinux" 35 | CT_ID=$NEXTID 36 | HN=$NSAPP 37 | DISK_SIZE="$var_disk" 38 | CORE_COUNT="$var_cpu" 39 | RAM_SIZE="$var_ram" 40 | BRG="vmbr0" 41 | NET="dhcp" 42 | GATE="" 43 | APT_CACHER="" 44 | APT_CACHER_IP="" 45 | DISABLEIP6="no" 46 | MTU="" 47 | SD="" 48 | NS="" 49 | MAC="" 50 | VLAN="" 51 | SSH="no" 52 | VERB="no" 53 | echo_default 54 | } 55 | 56 | function update_script() { 57 | header_info 58 | if [[ ! -d /etc/pacman.d ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 59 | msg_info "Updating ${APP} LXC" 60 | dnf -y update 61 | dnf -y upgrade 62 | msg_ok "Updated Successfully" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | -------------------------------------------------------------------------------- /ct/runtipi.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ __ _ _ 12 | / __ \__ ______ / /_(_)___ (_) 13 | / /_/ / / / / __ \/ __/ / __ \/ / 14 | / _, _/ /_/ / / / / /_/ / /_/ / / 15 | /_/ |_|\__,_/_/ /_/\__/_/ .___/_/ 16 | /_/ 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Runtipi" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/runtipi ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | cd /opt/runtipi && ./runtipi-cli update latest 59 | exit 60 | } 61 | 62 | start 63 | build_container 64 | description 65 | 66 | msg_ok "Completed Successfully!\n" 67 | echo -e "${APP} should be reachable by going to the following URL. 68 | ${BL}http://${IP} ${CL} \n" 69 | -------------------------------------------------------------------------------- /ct/sftpgo.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | _____ ________________ ______ 12 | / ___// ____/_ __/ __ \/ ____/___ 13 | \__ \/ /_ / / / /_/ / / __/ __ \ 14 | ___/ / __/ / / / ____/ /_/ / /_/ / 15 | /____/_/ /_/ /_/ \____/\____/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="SFTPGo" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8080/web/admin ${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/tautulli.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ __ _____ 12 | /_ __/___ ___ __/ /___ __/ / (_) 13 | / / / __ `/ / / / __/ / / / / / / 14 | / / / /_/ / /_/ / /_/ /_/ / / / / 15 | /_/ \__,_/\__,_/\__/\__,_/_/_/_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Tautulli" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/Tautulli/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8181${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/tdarr.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ __ 12 | /_ __/___/ /___ __________ 13 | / / / __ / __ `/ ___/ ___/ 14 | / / / /_/ / /_/ / / / / 15 | /_/ \__,_/\__,_/_/ /_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Tdarr" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/tdarr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8265${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/traccar.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ______ 12 | /_ __/________ _______________ ______ 13 | / / / ___/ __ `/ ___/ ___/ __ `/ ___/ 14 | / / / / / /_/ / /__/ /__/ /_/ / / 15 | /_/ /_/ \__,_/\___/\___/\__,_/_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Traccar" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="1024" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /opt/traccar ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_error "There is currently no update path available." 59 | exit 60 | exit 61 | } 62 | 63 | start 64 | build_container 65 | description 66 | 67 | msg_ok "Completed Successfully!\n" 68 | echo -e "${APP} should be reachable by going to the following URL. 69 | ${BL}http://${IP}:8082${CL} \n" 70 | -------------------------------------------------------------------------------- /ct/ubuntu.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ ____ __ 12 | / / / / /_ __ ______ / /___ __ 13 | / / / / __ \/ / / / __ \/ __/ / / / 14 | / /_/ / /_/ / /_/ / / / / /_/ /_/ / 15 | \____/_.___/\__,_/_/ /_/\__/\__,_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Ubuntu" 22 | var_disk="2" 23 | var_cpu="1" 24 | var_ram="512" 25 | var_os="ubuntu" 26 | var_version="22.04" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating ${APP} LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated ${APP} LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | -------------------------------------------------------------------------------- /ct/umbrel.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ __ __ __ 12 | / / / /___ ___ / /_ ________ / / 13 | / / / / __ `__ \/ __ \/ ___/ _ \/ / 14 | / /_/ / / / / / / /_/ / / / __/ / 15 | \____/_/ /_/ /_/_.___/_/ \___/_/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Umbrel" 22 | var_disk="8" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | msg_info "Updating ${APP} LXC" 58 | apt-get update &>/dev/null 59 | apt-get -y upgrade &>/dev/null 60 | msg_ok "Updated ${APP} LXC" 61 | exit 62 | } 63 | 64 | start 65 | build_container 66 | description 67 | 68 | msg_ok "Completed Successfully!\n" 69 | echo -e "${APP} should be reachable by going to the following URL (reboot is required before apps install). 70 | ${BL}http://${IP} ${CL} \n" 71 | -------------------------------------------------------------------------------- /ct/unmanic.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | __ __ _ 12 | / / / /___ ____ ___ ____ _____ (_)____ 13 | / / / / __ \/ __ `__ \/ __ `/ __ \/ / ___/ 14 | / /_/ / / / / / / / / / /_/ / / / / / /__ 15 | \____/_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\___/ 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Unmanic" 22 | var_disk="4" 23 | var_cpu="2" 24 | var_ram="2048" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="0" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/systemd/system/unmanic.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | pip3 install -U unmanic &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | msg_ok "Updated $APP LXC" 62 | exit 63 | } 64 | 65 | start 66 | build_container 67 | description 68 | 69 | msg_ok "Completed Successfully!\n" 70 | echo -e "${APP} should be reachable by going to the following URL. 71 | ${BL}http://${IP}:8888${CL} \n" 72 | -------------------------------------------------------------------------------- /ct/zabbix.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | _____ __ __ _ 12 | /__ / ____ _/ /_ / /_ (_) __ 13 | / / / __ `/ __ \/ __ \/ / |/_/ 14 | / /__/ /_/ / /_/ / /_/ / /> < 15 | /____/\__,_/_.___/_.___/_/_/|_| 16 | 17 | EOF 18 | } 19 | header_info 20 | echo -e "Loading..." 21 | APP="Zabbix" 22 | var_disk="6" 23 | var_cpu="2" 24 | var_ram="4096" 25 | var_os="debian" 26 | var_version="12" 27 | variables 28 | color 29 | catch_errors 30 | 31 | function default_settings() { 32 | CT_TYPE="1" 33 | PW="" 34 | CT_ID=$NEXTID 35 | HN=$NSAPP 36 | DISK_SIZE="$var_disk" 37 | CORE_COUNT="$var_cpu" 38 | RAM_SIZE="$var_ram" 39 | BRG="vmbr0" 40 | NET="dhcp" 41 | GATE="" 42 | APT_CACHER="" 43 | APT_CACHER_IP="" 44 | DISABLEIP6="no" 45 | MTU="" 46 | SD="" 47 | NS="" 48 | MAC="" 49 | VLAN="" 50 | SSH="no" 51 | VERB="no" 52 | echo_default 53 | } 54 | 55 | function update_script() { 56 | header_info 57 | if [[ ! -f /etc/zabbix/zabbix_server.conf ]]; then msg_error "No ${APP} Installation Found!"; exit; fi 58 | msg_info "Updating $APP LXC" 59 | apt-get update &>/dev/null 60 | apt-get -y upgrade &>/dev/null 61 | systemctl restart zabbix-server 62 | msg_ok "Updated $APP LXC" 63 | exit 64 | } 65 | 66 | start 67 | build_container 68 | description 69 | 70 | msg_ok "Completed Successfully!\n" 71 | echo -e "${APP} should be reachable by going to the following URL. 72 | ${BL}http://${IP}/zabbix${CL} \n" 73 | -------------------------------------------------------------------------------- /install/adguard-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing AdGuard Home" 23 | $STD tar zxvf <(curl -fsSL https://static.adtidy.org/adguardhome/release/AdGuardHome_linux_amd64.tar.gz) -C /opt 24 | msg_ok "Installed AdGuard Home" 25 | 26 | msg_info "Creating Service" 27 | cat </etc/systemd/system/AdGuardHome.service 28 | [Unit] 29 | Description=AdGuard Home: Network-level blocker 30 | ConditionFileIsExecutable=/opt/AdGuardHome/AdGuardHome 31 | After=syslog.target network-online.target 32 | 33 | [Service] 34 | StartLimitInterval=5 35 | StartLimitBurst=10 36 | ExecStart=/opt/AdGuardHome/AdGuardHome "-s" "run" 37 | WorkingDirectory=/opt/AdGuardHome 38 | StandardOutput=file:/var/log/AdGuardHome.out 39 | StandardError=file:/var/log/AdGuardHome.err 40 | Restart=always 41 | RestartSec=10 42 | EnvironmentFile=-/etc/sysconfig/AdGuardHome 43 | 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl enable -q --now AdGuardHome.service 48 | msg_ok "Created Service" 49 | 50 | motd_ssh 51 | customize 52 | 53 | msg_info "Cleaning up" 54 | $STD apt-get -y autoremove 55 | $STD apt-get -y autoclean 56 | msg_ok "Cleaned" 57 | -------------------------------------------------------------------------------- /install/alpine-grafana-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 8 | 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apk add newt 18 | $STD apk add curl 19 | $STD apk add openssh 20 | $STD apk add nano 21 | $STD apk add mc 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Grafana" 25 | $STD apk add grafana 26 | $STD sed -i '/http_addr/s/127.0.0.1/0.0.0.0/g' /etc/conf.d/grafana 27 | $STD rc-service grafana start 28 | $STD rc-update add grafana default 29 | msg_ok "Installed Grafana" 30 | 31 | motd_ssh 32 | customize -------------------------------------------------------------------------------- /install/alpine-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 8 | 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apk add newt 18 | $STD apk add curl 19 | $STD apk add openssh 20 | $STD apk add nano 21 | $STD apk add mc 22 | msg_ok "Installed Dependencies" 23 | 24 | motd_ssh 25 | customize 26 | -------------------------------------------------------------------------------- /install/alpine-vaultwarden-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 8 | 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apk add newt 18 | $STD apk add curl 19 | $STD apk add openssl 20 | $STD apk add openssh 21 | $STD apk add nano 22 | $STD apk add mc 23 | $STD apk add argon2 24 | msg_ok "Installed Dependencies" 25 | 26 | msg_info "Installing Alpine-Vaultwarden" 27 | $STD apk add vaultwarden 28 | sed -i -e 's/# export ADMIN_TOKEN=.*/export ADMIN_TOKEN='\'''\''/' -e '/^# export ROCKET_ADDRESS=0\.0\.0\.0/s/^# //' -e 's|export WEB_VAULT_ENABLED=.*|export WEB_VAULT_ENABLED=true|' /etc/conf.d/vaultwarden 29 | msg_ok "Installed Alpine-Vaultwarden" 30 | 31 | msg_info "Installing Web-Vault" 32 | $STD apk add vaultwarden-web-vault 33 | msg_ok "Installed Web-Vault" 34 | 35 | msg_info "Starting Alpine-Vaultwarden" 36 | $STD rc-service vaultwarden start 37 | $STD rc-update add vaultwarden default 38 | msg_ok "Started Alpine-Vaultwarden" 39 | 40 | motd_ssh 41 | customize 42 | -------------------------------------------------------------------------------- /install/alpine-zigbee2mqtt-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 8 | 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apk add newt 18 | $STD apk add curl 19 | $STD apk add openssh 20 | $STD apk add nano 21 | $STD apk add mc 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Alpine-Zigbee2MQTT" 25 | $STD apk add zigbee2mqtt 26 | mkdir -p /root/.z2m 27 | ln -s /etc/zigbee2mqtt/ /root/.z2m 28 | chown -R root:root /etc/zigbee2mqtt /root/.z2m 29 | sed -i -e 's/#datadir="\/var\/lib\/zigbee2mqtt"/datadir="\/etc\/zigbee2mqtt"/' -e 's/#command_user="zigbee2mqtt"/command_user="root"/' /etc/conf.d/zigbee2mqtt 30 | $STD rc-update add zigbee2mqtt 31 | $STD rc-service zigbee2mqtt restart 32 | msg_ok "Installed Alpine-Zigbee2MQTT" 33 | 34 | motd_ssh 35 | customize 36 | -------------------------------------------------------------------------------- /install/apache-cassandra-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y apt-transport-https 21 | $STD apt-get install -y gpg 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Eclipse Temurin (Patience)" 25 | wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg 26 | 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 27 | $STD apt-get update 28 | $STD apt-get install -y temurin-11-jdk 29 | msg_ok "Installed Eclipse Temurin" 30 | 31 | msg_info "Installing Apache Cassandra" 32 | wget -qO- https://downloads.apache.org/cassandra/KEYS | gpg --dearmor >/etc/apt/trusted.gpg.d/cassandra.gpg 33 | echo "deb https://debian.cassandra.apache.org 41x main" >/etc/apt/sources.list.d/cassandra.sources.list 34 | $STD apt-get update 35 | $STD apt-get install -y cassandra cassandra-tools 36 | sed -i -e 's/^rpc_address: localhost/#rpc_address: localhost/g' -e 's/^# rpc_interface: eth1/rpc_interface: eth0/g' /etc/cassandra/cassandra.yaml 37 | msg_ok "Installed Apache Cassandra" 38 | 39 | motd_ssh 40 | customize 41 | 42 | msg_info "Cleaning up" 43 | $STD apt-get -y autoremove 44 | $STD apt-get -y autoclean 45 | msg_ok "Cleaned" 46 | -------------------------------------------------------------------------------- /install/apt-cacher-ng-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Apt-Cacher NG" 23 | DEBIAN_FRONTEND=noninteractive $STD apt-get -o Dpkg::Options::="--force-confold" install -y apt-cacher-ng 24 | sed -i 's/# PassThroughPattern: .* # this would allow CONNECT to everything/PassThroughPattern: .*/' /etc/apt-cacher-ng/acng.conf 25 | systemctl enable -q --now apt-cacher-ng 26 | msg_ok "Installed Apt-Cacher NG" 27 | 28 | motd_ssh 29 | customize 30 | 31 | msg_info "Cleaning up" 32 | $STD apt-get -y autoremove 33 | $STD apt-get -y autoclean 34 | msg_ok "Cleaned" 35 | -------------------------------------------------------------------------------- /install/audiobookshelf-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y gnupg 20 | $STD apt-get install -y mc 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing audiobookshelf" 24 | curl -fsSL https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg >/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc 25 | echo "deb [signed-by=/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc] https://advplyr.github.io/audiobookshelf-ppa ./" >/etc/apt/sources.list.d/audiobookshelf.list 26 | $STD apt-get update 27 | $STD apt install audiobookshelf 28 | msg_ok "Installed audiobookshelf" 29 | 30 | motd_ssh 31 | customize 32 | 33 | msg_info "Cleaning up" 34 | $STD apt-get -y autoremove 35 | $STD apt-get -y autoclean 36 | msg_ok "Cleaned" 37 | -------------------------------------------------------------------------------- /install/autobrr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Autobrr" 23 | wget -q $(curl -s https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4) 24 | tar -C /usr/local/bin -xzf autobrr*.tar.gz 25 | rm -rf autobrr*.tar.gz 26 | mkdir -p /root/.config/autobrr 27 | cat <>/root/.config/autobrr/config.toml 28 | # https://autobrr.com/configuration/autobrr 29 | host = "0.0.0.0" 30 | port = 7474 31 | logLevel = "DEBUG" 32 | sessionSecret = "$(openssl rand -base64 24)" 33 | EOF 34 | msg_ok "Installed Autobrr" 35 | 36 | msg_info "Creating Service" 37 | service_path="/etc/systemd/system/autobrr.service" 38 | echo "[Unit] 39 | Description=autobrr service 40 | After=syslog.target network-online.target 41 | [Service] 42 | Type=simple 43 | User=root 44 | Group=root 45 | ExecStart=/usr/local/bin/autobrr --config=/root/.config/autobrr/ 46 | [Install] 47 | WantedBy=multi-user.target" >$service_path 48 | systemctl enable --now -q autobrr.service 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | $STD apt-get -y autoremove 56 | $STD apt-get -y autoclean 57 | msg_ok "Cleaned" 58 | -------------------------------------------------------------------------------- /install/caddy-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y {debian-keyring,debian-archive-keyring,apt-transport-https,gpg,curl,sudo,mc} 18 | msg_ok "Installed Dependencies" 19 | 20 | msg_info "Installing Caddy" 21 | curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg 22 | curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' >/etc/apt/sources.list.d/caddy-stable.list 23 | $STD apt-get update 24 | $STD apt-get install -y caddy 25 | msg_ok "Installed Caddy" 26 | 27 | motd_ssh 28 | customize 29 | 30 | msg_info "Cleaning up" 31 | $STD apt-get -y autoremove 32 | $STD apt-get -y autoclean 33 | msg_ok "Cleaned" 34 | -------------------------------------------------------------------------------- /install/casaos-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing CasaOS (Patience)" 23 | DOCKER_CONFIG_PATH='/etc/docker/daemon.json' 24 | mkdir -p $(dirname $DOCKER_CONFIG_PATH) 25 | echo -e '{\n "log-driver": "journald"\n}' > /etc/docker/daemon.json 26 | $STD bash <(curl -fsSL https://get.casaos.io/v0.4.1) 27 | msg_ok "Installed CasaOS" 28 | 29 | motd_ssh 30 | customize 31 | 32 | msg_info "Cleaning up" 33 | $STD apt-get -y autoremove 34 | $STD apt-get -y autoclean 35 | msg_ok "Cleaned" 36 | -------------------------------------------------------------------------------- /install/channels-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y chromium 21 | $STD apt-get install -y xvfb 22 | msg_ok "Installed Dependencies" 23 | 24 | if [[ "$CTTYPE" == "0" ]]; then 25 | msg_info "Setting Up Hardware Acceleration" 26 | $STD apt-get -y install \ 27 | va-driver-all \ 28 | ocl-icd-libopencl1 \ 29 | intel-opencl-icd 30 | chgrp video /dev/dri 31 | chmod 755 /dev/dri 32 | chmod 660 /dev/dri/* 33 | $STD adduser $(id -u -n) video 34 | $STD adduser $(id -u -n) render 35 | msg_ok "Set Up Hardware Acceleration" 36 | fi 37 | 38 | msg_info "Installing Channels DVR Server (Patience)" 39 | cd /opt 40 | $STD bash <(curl -fsSL https://getchannels.com/dvr/setup.sh) 41 | sed -i -e 's/^sgx:x:104:$/render:x:104:root/' -e 's/^render:x:106:root$/sgx:x:106:/' /etc/group 42 | msg_ok "Installed Channels DVR Server" 43 | 44 | motd_ssh 45 | customize 46 | 47 | msg_info "Cleaning up" 48 | $STD apt-get -y autoremove 49 | $STD apt-get -y autoclean 50 | msg_ok "Cleaned" 51 | -------------------------------------------------------------------------------- /install/cloudflared-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Cloudflared" 23 | mkdir -p --mode=0755 /usr/share/keyrings 24 | VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)" 25 | curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg >/usr/share/keyrings/cloudflare-main.gpg 26 | echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared $VERSION main" >/etc/apt/sources.list.d/cloudflared.list 27 | $STD apt-get update 28 | $STD apt-get install -y cloudflared 29 | msg_ok "Installed Cloudflared" 30 | 31 | motd_ssh 32 | customize 33 | 34 | msg_info "Cleaning up" 35 | $STD apt-get -y autoremove 36 | $STD apt-get -y autoclean 37 | msg_ok "Cleaned" 38 | -------------------------------------------------------------------------------- /install/cockpit-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | # Source: https://github.com/cockpit-project/cockpit 9 | 10 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 11 | color 12 | verb_ip6 13 | catch_errors 14 | setting_up_container 15 | network_check 16 | update_os 17 | 18 | msg_info "Installing Dependencies" 19 | $STD apt-get install -y curl 20 | $STD apt-get install -y sudo 21 | $STD apt-get install -y mc 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Cockpit" 25 | source /etc/os-release 26 | echo "deb http://deb.debian.org/debian ${VERSION_CODENAME}-backports main" >/etc/apt/sources.list.d/backports.list 27 | $STD apt-get update 28 | $STD apt-get install -t ${VERSION_CODENAME}-backports cockpit --no-install-recommends -y 29 | sed -i "s/root//g" /etc/cockpit/disallowed-users 30 | msg_ok "Installed Cockpit" 31 | 32 | motd_ssh 33 | customize 34 | 35 | msg_info "Cleaning up" 36 | $STD apt-get -y autoremove 37 | $STD apt-get -y autoclean 38 | msg_ok "Cleaned" 39 | -------------------------------------------------------------------------------- /install/daemonsync-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y g++-multilib 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Daemon Sync Server" 24 | wget -qL https://github.com/tteck/Proxmox/raw/main/misc/daemonsync_2.2.0.0059_amd64.deb 25 | $STD dpkg -i daemonsync_2.2.0.0059_amd64.deb 26 | msg_ok "Installed Daemon Sync Server" 27 | 28 | motd_ssh 29 | customize 30 | 31 | msg_info "Cleaning up" 32 | rm -rf daemonsync_2.2.0.0059_amd64.deb 33 | $STD apt-get autoremove >/dev/null 34 | $STD apt-get autoclean >/dev/null 35 | msg_ok "Cleaned" 36 | -------------------------------------------------------------------------------- /install/debian-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | motd_ssh 23 | customize 24 | 25 | msg_info "Cleaning up" 26 | $STD apt-get -y autoremove 27 | $STD apt-get -y autoclean 28 | msg_ok "Cleaned" -------------------------------------------------------------------------------- /install/emqx-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing EMQX" 23 | $STD bash <(curl -fsSL https://packagecloud.io/install/repositories/emqx/emqx/script.deb.sh) 24 | $STD apt-get install -y emqx 25 | $STD systemctl enable --now emqx 26 | msg_ok "Installed EMQX" 27 | 28 | motd_ssh 29 | customize 30 | 31 | msg_info "Cleaning up" 32 | apt-get autoremove >/dev/null 33 | apt-get autoclean >/dev/null 34 | msg_ok "Cleaned" 35 | -------------------------------------------------------------------------------- /install/esphome-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y git 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Updating Python3" 24 | $STD apt-get install -y \ 25 | python3 \ 26 | python3-dev \ 27 | python3-pip \ 28 | python3-venv 29 | rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED 30 | msg_ok "Updated Python3" 31 | 32 | msg_info "Installing ESPHome" 33 | mkdir /root/config 34 | $STD pip install esphome tornado esptool 35 | msg_ok "Installed ESPHome" 36 | 37 | msg_info "Creating Service" 38 | cat </etc/systemd/system/esphomeDashboard.service 39 | [Unit] 40 | Description=ESPHome Dashboard 41 | After=network.target 42 | 43 | [Service] 44 | ExecStart=/usr/local/bin/esphome dashboard /root/config/ 45 | Restart=always 46 | User=root 47 | 48 | [Install] 49 | WantedBy=multi-user.target 50 | EOF 51 | systemctl enable -q --now esphomeDashboard.service 52 | msg_ok "Created Service" 53 | 54 | motd_ssh 55 | customize 56 | 57 | msg_info "Cleaning up" 58 | $STD apt-get -y autoremove 59 | $STD apt-get -y autoclean 60 | msg_ok "Cleaned" 61 | -------------------------------------------------------------------------------- /install/evcc-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: MickLesk (Canbiz) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | # Source: https://github.com/evcc-io/evcc 9 | 10 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 11 | color 12 | verb_ip6 13 | catch_errors 14 | setting_up_container 15 | network_check 16 | update_os 17 | 18 | msg_info "Installing Dependencies" 19 | $STD apt-get install -y \ 20 | curl \ 21 | sudo \ 22 | mc \ 23 | lsb-release \ 24 | gpg 25 | msg_ok "Installed Dependencies" 26 | 27 | msg_info "Setting up evcc Repository" 28 | curl -fsSL https://dl.evcc.io/public/evcc/stable/gpg.EAD5D0E07B0EC0FD.key | gpg --dearmor -o /etc/apt/keyrings/evcc-stable.gpg 29 | echo "deb [signed-by=/etc/apt/keyrings/evcc-stable.gpg] https://dl.evcc.io/public/evcc/stable/deb/debian $(lsb_release -cs) main" >/etc/apt/sources.list.d/evcc-stable.list 30 | $STD apt update 31 | msg_ok "evcc Repository setup sucessfully" 32 | 33 | msg_info "Installing evcc" 34 | $STD apt install -y evcc 35 | systemctl enable -q --now evcc.service 36 | msg_ok "Installed evcc" 37 | 38 | motd_ssh 39 | customize 40 | 41 | msg_info "Cleaning up" 42 | $STD apt-get -y autoremove 43 | $STD apt-get -y autoclean 44 | msg_ok "Cleaned" 45 | -------------------------------------------------------------------------------- /install/fhem-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y avahi-daemon 21 | $STD apt-get install -y gnupg2 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Setting up Fhem Repository" 25 | curl -sSf https://debian.fhem.de/archive.key | gpg --dearmor >/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg 26 | 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 27 | msg_ok "Set up Fhem Repository" 28 | 29 | msg_info "Installing Fhem" 30 | $STD apt-get update 31 | $STD apt-get install -y fhem 32 | msg_info "Installed Fhem" 33 | 34 | motd_ssh 35 | customize 36 | 37 | msg_info "Cleaning up" 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/go2rtc-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing go2rtc" 23 | mkdir -p /opt/go2rtc 24 | cd /opt/go2rtc 25 | wget -q https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64 26 | chmod +x go2rtc_linux_amd64 27 | msg_ok "Installed go2rtc" 28 | 29 | msg_info "Creating Service" 30 | service_path="/etc/systemd/system/go2rtc.service" 31 | echo "[Unit] 32 | Description=go2rtc service 33 | After=network.target 34 | 35 | [Service] 36 | Type=simple 37 | User=root 38 | ExecStart=/opt/go2rtc/go2rtc_linux_amd64 39 | 40 | [Install] 41 | WantedBy=multi-user.target" >$service_path 42 | systemctl enable -q --now go2rtc 43 | msg_ok "Created Service" 44 | 45 | motd_ssh 46 | customize 47 | 48 | msg_info "Cleaning up" 49 | $STD apt-get -y autoremove 50 | $STD apt-get -y autoclean 51 | msg_ok "Cleaned" 52 | -------------------------------------------------------------------------------- /install/gokapi-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Gokapi" 23 | LATEST=$(curl -sL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) 24 | mkdir -p /opt/gokapi/{data,config} 25 | wget -q https://github.com/Forceu/Gokapi/releases/download/$LATEST/gokapi-linux_amd64.zip 26 | unzip -q gokapi-linux_amd64.zip -d /opt/gokapi 27 | rm gokapi-linux_amd64.zip 28 | chmod +x /opt/gokapi/gokapi-linux_amd64 29 | msg_ok "Installed Gokapi" 30 | 31 | msg_info "Creating Service" 32 | cat </etc/systemd/system/gokapi.service 33 | [Unit] 34 | Description=gokapi 35 | 36 | [Service] 37 | Type=simple 38 | Environment=GOKAPI_DATA_DIR=/opt/gokapi/data 39 | Environment=GOKAPI_CONFIG_DIR=/opt/gokapi/config 40 | ExecStart=/opt/gokapi/gokapi-linux_amd64 41 | 42 | [Install] 43 | WantedBy=multi-user.target 44 | EOF 45 | systemctl enable -q --now gokapi 46 | msg_ok "Created Service" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/gotify-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Gotify" 23 | RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') 24 | mkdir -p /opt/gotify 25 | cd /opt/gotify 26 | wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip 27 | $STD unzip gotify-linux-amd64.zip 28 | rm -rf gotify-linux-amd64.zip 29 | chmod +x gotify-linux-amd64 30 | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt 31 | msg_ok "Installed Gotify" 32 | 33 | msg_info "Creating Service" 34 | cat </etc/systemd/system/gotify.service 35 | [Unit] 36 | Description=Gotify 37 | Requires=network.target 38 | After=network.target 39 | 40 | [Service] 41 | Type=simple 42 | User=root 43 | WorkingDirectory=/opt/gotify 44 | ExecStart=/opt/gotify/./gotify-linux-amd64 45 | Restart=always 46 | RestartSec=3 47 | 48 | [Install] 49 | WantedBy=multi-user.target 50 | EOF 51 | systemctl enable -q --now gotify 52 | msg_ok "Created Service" 53 | 54 | motd_ssh 55 | customize 56 | 57 | msg_info "Cleaning up" 58 | $STD apt-get -y autoremove 59 | $STD apt-get -y autoclean 60 | msg_ok "Cleaned" 61 | -------------------------------------------------------------------------------- /install/grafana-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gnupg 21 | $STD apt-get install -y apt-transport-https 22 | $STD apt-get install -y software-properties-common 23 | msg_ok "Installed Dependencies" 24 | 25 | msg_info "Setting up Grafana Repository" 26 | wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key 27 | sh -c 'echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list' 28 | msg_ok "Set up Grafana Repository" 29 | 30 | msg_info "Installing Grafana" 31 | $STD apt-get update 32 | $STD apt-get install -y grafana 33 | systemctl start grafana-server 34 | systemctl enable --now -q grafana-server.service 35 | msg_ok "Installed Grafana" 36 | 37 | motd_ssh 38 | customize 39 | 40 | msg_info "Cleaning up" 41 | $STD apt-get -y autoremove 42 | $STD apt-get -y autoclean 43 | msg_ok "Cleaned" 44 | -------------------------------------------------------------------------------- /install/headscale-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') 23 | msg_info "Installing ${APPLICATION} v${RELEASE}" 24 | wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb 25 | $STD dpkg -i headscale_${RELEASE}_linux_amd64.deb 26 | systemctl enable -q --now headscale 27 | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt 28 | msg_ok "Installed ${APPLICATION} v${RELEASE}" 29 | 30 | motd_ssh 31 | customize 32 | 33 | msg_info "Cleaning up" 34 | rm headscale_${RELEASE}_linux_amd64.deb 35 | $STD apt-get -y autoremove 36 | $STD apt-get -y autoclean 37 | msg_ok "Cleaned" 38 | -------------------------------------------------------------------------------- /install/homebox-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: MickLesk (Canbiz) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | # Source: https://github.com/sysadminsmedia/homebox 9 | 10 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 11 | color 12 | verb_ip6 13 | catch_errors 14 | setting_up_container 15 | network_check 16 | update_os 17 | 18 | msg_info "Installing Dependencies" 19 | $STD apt-get install -y \ 20 | curl \ 21 | sudo \ 22 | mc 23 | msg_ok "Installed Dependencies" 24 | 25 | msg_info "Installing Homebox" 26 | RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 27 | wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt 28 | chmod +x /opt/homebox 29 | echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" 30 | msg_ok "Installed Homebox" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/homebox.service 34 | [Unit] 35 | Description=Start Homebox Service 36 | After=network.target 37 | 38 | [Service] 39 | WorkingDirectory=/opt 40 | ExecStart=/opt/homebox 41 | Restart=on-failure 42 | 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now homebox.service 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/homebridge-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y avahi-daemon 21 | $STD apt-get install -y gnupg2 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Setting up Homebridge Repository" 25 | curl -sSf https://repo.homebridge.io/KEY.gpg | gpg --dearmor >/etc/apt/trusted.gpg.d/homebridge.gpg 26 | echo 'deb [signed-by=/etc/apt/trusted.gpg.d/homebridge.gpg] https://repo.homebridge.io stable main' >/etc/apt/sources.list.d/homebridge.list 27 | msg_ok "Set up Homebridge Repository" 28 | 29 | msg_info "Installing Homebridge" 30 | $STD apt update 31 | $STD apt-get install -y homebridge 32 | msg_ok "Installed Homebridge" 33 | 34 | motd_ssh 35 | customize 36 | 37 | msg_info "Cleaning up" 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/homer-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y pip 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Homer" 24 | mkdir -p /opt/homer 25 | cd /opt/homer 26 | wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip 27 | $STD unzip homer.zip 28 | rm -rf homer.zip 29 | cp assets/config.yml.dist assets/config.yml 30 | msg_ok "Installed Homer" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/homer.service 34 | [Unit] 35 | Description=Homer Dashboard 36 | After=network-online.target 37 | [Service] 38 | Type=simple 39 | WorkingDirectory=/opt/homer 40 | ExecStart=python3 -m http.server 8010 41 | [Install] 42 | WantedBy=multi-user.target 43 | EOF 44 | $STD systemctl enable --now homer 45 | msg_ok "Created Service" 46 | 47 | motd_ssh 48 | customize 49 | 50 | msg_info "Cleaning up" 51 | $STD apt-get -y autoremove 52 | $STD apt-get -y autoclean 53 | msg_ok "Cleaned" 54 | -------------------------------------------------------------------------------- /install/hyperhdr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing HyperHDR" 24 | curl -fsSL https://awawa-dev.github.io/hyperhdr.public.apt.gpg.key >/usr/share/keyrings/hyperhdr.public.apt.gpg.key 25 | chmod go+r /usr/share/keyrings/hyperhdr.public.apt.gpg.key 26 | echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hyperhdr.public.apt.gpg.key] https://awawa-dev.github.io $(awk -F= '/VERSION_CODENAME/ {print $2}' /etc/os-release) main" >/etc/apt/sources.list.d/hyperhdr.list 27 | $STD apt-get update 28 | $STD apt-get install -y hyperhdr 29 | msg_ok "Installed HyperHDR" 30 | 31 | msg_info "Creating Service" 32 | cat </etc/systemd/system/hyperhdr.service 33 | [Unit] 34 | Description=HyperHDR Service 35 | After=syslog.target network.target 36 | 37 | [Service] 38 | Restart=on-failure 39 | RestartSec=5 40 | Type=simple 41 | ExecStart=/usr/bin/hyperhdr 42 | 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now hyperhdr 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/hyperion-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y lsb-release 21 | $STD apt-get install -y gpg 22 | $STD apt-get install -y apt-transport-https 23 | $STD apt-get install -y libpython3.11 24 | 25 | msg_ok "Installed Dependencies" 26 | 27 | msg_info "Installing Hyperion" 28 | wget -qO- https://releases.hyperion-project.org/hyperion.pub.key | gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg 29 | 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 30 | $STD apt-get update 31 | $STD apt-get install -y hyperion 32 | $STD systemctl enable --now hyperion@root.service 33 | msg_ok "Installed Hyperion" 34 | 35 | motd_ssh 36 | customize 37 | 38 | msg_info "Cleaning up" 39 | $STD apt-get autoremove >/dev/null 40 | $STD apt-get autoclean >/dev/null 41 | msg_ok "Cleaned" 42 | -------------------------------------------------------------------------------- /install/iobroker-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y ca-certificates 21 | $STD apt-get install -y gnupg 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Setting up Node.js Repository" 25 | mkdir -p /etc/apt/keyrings 26 | curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg 27 | echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list 28 | msg_ok "Set up Node.js Repository" 29 | 30 | msg_info "Installing Node.js" 31 | $STD apt-get update 32 | $STD apt-get install -y nodejs 33 | msg_ok "Installed Node.js" 34 | 35 | msg_info "Installing ioBroker (Patience)" 36 | $STD bash <(curl -fsSL https://iobroker.net/install.sh) 37 | msg_ok "Installed ioBroker" 38 | 39 | motd_ssh 40 | customize 41 | 42 | msg_info "Cleaning up" 43 | $STD apt-get -y autoremove 44 | $STD apt-get -y autoclean 45 | msg_ok "Cleaned" 46 | -------------------------------------------------------------------------------- /install/jackett-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Jackett" 23 | RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4) 24 | wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz 25 | tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt 26 | rm -rf Jackett.Binaries.LinuxAMDx64.tar.gz 27 | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt 28 | msg_ok "Installed Jackett" 29 | 30 | msg_info "Creating Service" 31 | cat </etc/systemd/system/jackett.service 32 | [Unit] 33 | Description=Jackett Daemon 34 | After=network.target 35 | [Service] 36 | SyslogIdentifier=jackett 37 | Restart=always 38 | RestartSec=5 39 | Type=simple 40 | WorkingDirectory=/opt/Jackett 41 | ExecStart=/bin/sh /opt/Jackett/jackett_launcher.sh 42 | TimeoutStopSec=30 43 | Environment="DisableRootWarning=true" 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl enable -q --now jackett.service 48 | msg_ok "Created Service" 49 | 50 | motd_ssh 51 | customize 52 | 53 | msg_info "Cleaning up" 54 | $STD apt-get -y autoremove 55 | $STD apt-get -y autoclean 56 | msg_ok "Cleaned" 57 | -------------------------------------------------------------------------------- /install/kavita-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Kavita" 23 | cd /opt 24 | RELEASE=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 25 | $STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner 26 | msg_ok "Installed Kavita" 27 | 28 | msg_info "Creating Service" 29 | service_path="/etc/systemd/system/kavita.service" 30 | echo "[Unit] 31 | Description=Kavita Server 32 | After=network.target 33 | 34 | [Service] 35 | Type=simple 36 | WorkingDirectory=/opt/Kavita 37 | ExecStart=/opt/Kavita/Kavita 38 | TimeoutStopSec=20 39 | KillMode=process 40 | Restart=on-failure 41 | 42 | [Install] 43 | WantedBy=multi-user.target" >$service_path 44 | chmod +x /opt/Kavita/* && chown root /opt/Kavita/* 45 | systemctl enable --now -q kavita.service 46 | msg_ok "Created Service" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/keycloak-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies (Patience)" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y ca-certificates-java 21 | $STD apt-get install -y openjdk-17-jre-headless 22 | msg_ok "Installed Dependencies" 23 | 24 | RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 25 | msg_info "Installing Keycloak v$RELEASE" 26 | cd /opt 27 | wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz 28 | $STD tar -xvf keycloak-$RELEASE.tar.gz 29 | mv keycloak-$RELEASE keycloak 30 | msg_ok "Installed Keycloak" 31 | 32 | msg_info "Creating Service" 33 | service_path="/etc/systemd/system/keycloak.service" 34 | echo "[Unit] 35 | Description=Keycloak 36 | After=network-online.target 37 | [Service] 38 | User=root 39 | WorkingDirectory=/opt/keycloak 40 | ExecStart=/opt/keycloak/bin/kc.sh start-dev 41 | [Install] 42 | WantedBy=multi-user.target" >$service_path 43 | $STD systemctl enable --now keycloak.service 44 | msg_ok "Created Service" 45 | 46 | motd_ssh 47 | customize 48 | 49 | msg_info "Cleaning up" 50 | $STD apt-get -y autoremove 51 | $STD apt-get -y autoclean 52 | msg_ok "Cleaned" 53 | -------------------------------------------------------------------------------- /install/lazylibrarian-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: MountyMapleSyrup (MountyMapleSyrup) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 10 | color 11 | verb_ip6 12 | catch_errors 13 | setting_up_container 14 | network_check 15 | update_os 16 | 17 | msg_info "Installing Dependencies" 18 | $STD apt-get install -y curl 19 | $STD apt-get install -y sudo 20 | $STD apt-get install -y mc 21 | $STD apt-get install -y git 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Python3 Dependencies" 25 | $STD apt-get install -y pip 26 | $STD apt-get install -y python3-irc 27 | $STD pip install jaraco.stream 28 | $STD pip install python-Levenshtein 29 | $STD pip install soupsieve 30 | msg_ok "Installed Python3 Dependencies" 31 | 32 | msg_info "Installing LazyLibrarian" 33 | $STD git clone https://gitlab.com/LazyLibrarian/LazyLibrarian /opt/LazyLibrarian 34 | msg_ok "Installed LazyLibrarian" 35 | 36 | msg_info "Creating Service" 37 | cat </etc/systemd/system/lazylibrarian.service 38 | [Unit] 39 | Description=LazyLibrarian Daemon 40 | After=syslog.target network.target 41 | [Service] 42 | UMask=0002 43 | Type=simple 44 | ExecStart=/usr/bin/python3 /opt/LazyLibrarian/LazyLibrarian.py 45 | TimeoutStopSec=20 46 | KillMode=process 47 | Restart=on-failure 48 | [Install] 49 | WantedBy=multi-user.target 50 | EOF 51 | systemctl enable --now -q lazylibrarian 52 | msg_ok "Created Service" 53 | 54 | motd_ssh 55 | customize 56 | 57 | msg_info "Cleaning up" 58 | $STD apt-get -y autoremove 59 | $STD apt-get -y autoclean 60 | msg_ok "Cleaned" 61 | -------------------------------------------------------------------------------- /install/lidarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | $STD apt-get install -y libchromaprint-tools 22 | $STD apt-get install -y mediainfo 23 | msg_ok "Installed Dependencies" 24 | 25 | msg_info "Installing Lidarr" 26 | mkdir -p /var/lib/lidarr/ 27 | chmod 775 /var/lib/lidarr/ 28 | $STD wget --content-disposition 'https://lidarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' 29 | $STD tar -xvzf Lidarr.master.*.tar.gz 30 | mv Lidarr /opt 31 | chmod 775 /opt/Lidarr 32 | msg_ok "Installed Lidarr" 33 | 34 | msg_info "Creating Service" 35 | cat </etc/systemd/system/lidarr.service 36 | [Unit] 37 | Description=Lidarr Daemon 38 | After=syslog.target network.target 39 | [Service] 40 | UMask=0002 41 | Type=simple 42 | ExecStart=/opt/Lidarr/Lidarr -nobrowser -data=/var/lib/lidarr/ 43 | TimeoutStopSec=20 44 | KillMode=process 45 | Restart=on-failure 46 | [Install] 47 | WantedBy=multi-user.target 48 | EOF 49 | systemctl -q daemon-reload 50 | systemctl enable --now -q lidarr 51 | msg_ok "Created Service" 52 | 53 | motd_ssh 54 | customize 55 | 56 | msg_info "Cleaning up" 57 | rm -rf Lidarr.master.*.tar.gz 58 | $STD apt-get -y autoremove 59 | $STD apt-get -y autoclean 60 | msg_ok "Cleaned" 61 | -------------------------------------------------------------------------------- /install/lldap-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # Co-Author: remz1337 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 10 | color 11 | verb_ip6 12 | catch_errors 13 | setting_up_container 14 | network_check 15 | update_os 16 | 17 | msg_info "Installing Dependencies" 18 | $STD apt-get install -y curl 19 | $STD apt-get install -y sudo 20 | $STD apt-get install -y mc 21 | $STD apt-get install -y gpg 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing lldap" 25 | source /etc/os-release 26 | os=$ID 27 | if [ "$os" == "ubuntu" ]; then 28 | DISTRO="xUbuntu" 29 | else 30 | DISTRO="${os^}" 31 | fi 32 | echo "deb http://download.opensuse.org/repositories/home:/Masgalor:/LLDAP/${DISTRO}_${VERSION_ID}/ /" >/etc/apt/sources.list.d/home:Masgalor:LLDAP.list 33 | curl -fsSL https://download.opensuse.org/repositories/home:Masgalor:LLDAP/${DISTRO}_${VERSION_ID}/Release.key | gpg --dearmor >/etc/apt/trusted.gpg.d/home_Masgalor_LLDAP.gpg 34 | $STD apt update 35 | $STD apt install -y lldap 36 | systemctl enable -q --now lldap 37 | msg_ok "Installed lldap" 38 | 39 | motd_ssh 40 | customize 41 | 42 | msg_info "Cleaning up" 43 | $STD apt-get -y autoremove 44 | $STD apt-get -y autoclean 45 | msg_ok "Cleaned" 46 | -------------------------------------------------------------------------------- /install/mediamtx-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y ffmpeg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing MediaMTX" 24 | RELEASE=$(curl -s https://api.github.com/repos/bluenviron/mediamtx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 25 | mkdir -p /opt/mediamtx 26 | cd /opt/mediamtx 27 | wget -q https://github.com/bluenviron/mediamtx/releases/download/${RELEASE}/mediamtx_${RELEASE}_linux_amd64.tar.gz 28 | tar xzf mediamtx_${RELEASE}_linux_amd64.tar.gz 29 | rm -rf mediamtx_${RELEASE}_linux_amd64.tar.gz 30 | msg_ok "Installed MediaMTX" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/mediamtx.service 34 | [Unit] 35 | Description=MediaMTX 36 | After=syslog.target network-online.target 37 | 38 | [Service] 39 | ExecStart=/opt/mediamtx/./mediamtx 40 | WorkingDirectory=/opt/mediamtx 41 | Restart=always 42 | 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now mediamtx.service 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/medusa-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | $STD apt-get install -y git-core 22 | $STD apt-get install -y mediainfo 23 | cat </etc/apt/sources.list.d/non-free.list 24 | deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware 25 | EOF 26 | $STD apt-get update 27 | $STD apt-get install -y unrar 28 | rm /etc/apt/sources.list.d/non-free.list 29 | msg_ok "Installed Dependencies" 30 | 31 | msg_info "Installing Medusa" 32 | $STD git clone https://github.com/pymedusa/Medusa.git /opt/medusa 33 | msg_ok "Installed Medusa" 34 | 35 | msg_info "Creating Service" 36 | cat </etc/systemd/system/medusa.service 37 | [Unit] 38 | Description=Medusa Daemon 39 | After=network.target 40 | 41 | [Service] 42 | Type=simple 43 | ExecStart=/usr/bin/python3 /opt/medusa/start.py -q --nolaunch --datadir=/opt/medusa 44 | TimeoutStopSec=25 45 | KillMode=process 46 | Restart=on-failure 47 | 48 | [Install] 49 | WantedBy=multi-user.target 50 | EOF 51 | systemctl enable -q --now medusa.service 52 | msg_ok "Created Service" 53 | 54 | motd_ssh 55 | customize 56 | 57 | msg_info "Cleaning up" 58 | $STD apt-get -y autoremove 59 | $STD apt-get -y autoclean 60 | msg_ok "Cleaned" 61 | -------------------------------------------------------------------------------- /install/meshcentral-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y ca-certificates 21 | $STD apt-get install -y gnupg 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Setting up Node.js Repository" 25 | mkdir -p /etc/apt/keyrings 26 | curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg 27 | echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list 28 | msg_ok "Set up Node.js Repository" 29 | 30 | msg_info "Installing Node.js" 31 | $STD apt-get update 32 | $STD apt-get install -y nodejs 33 | msg_ok "Installed Node.js" 34 | 35 | msg_info "Installing MeshCentral" 36 | mkdir /opt/meshcentral 37 | cd /opt/meshcentral 38 | $STD npm install meshcentral 39 | $STD node node_modules/meshcentral --install 40 | msg_ok "Installed MeshCentral" 41 | 42 | motd_ssh 43 | customize 44 | 45 | msg_info "Cleaning up" 46 | $STD apt-get -y autoremove 47 | $STD apt-get -y autoclean 48 | msg_ok "Cleaned" 49 | -------------------------------------------------------------------------------- /install/mongodb-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y gnupg 18 | $STD apt-get install -y curl 19 | $STD apt-get install -y sudo 20 | $STD apt-get install -y mc 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing MongoDB" 24 | wget -qO- https://www.mongodb.org/static/pgp/server-7.0.asc | gpg --dearmor >/usr/share/keyrings/mongodb-server-7.0.gpg 25 | echo "deb [signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg] http://repo.mongodb.org/apt/debian $(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)/mongodb-org/7.0 main" >/etc/apt/sources.list.d/mongodb-org-7.0.list 26 | $STD apt-get update 27 | $STD apt-get install -y mongodb-org 28 | sed -i 's/bindIp: 127.0.0.1/bindIp: 0.0.0.0/' /etc/mongod.conf 29 | systemctl enable -q --now mongod.service 30 | msg_ok "Installed MongoDB" 31 | 32 | motd_ssh 33 | customize 34 | 35 | msg_info "Cleaning up" 36 | $STD apt-get -y autoremove 37 | $STD apt-get -y autoclean 38 | msg_ok "Cleaned" 39 | -------------------------------------------------------------------------------- /install/mqtt-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Mosquitto MQTT Broker" 24 | $STD apt-get -y install mosquitto 25 | $STD apt-get -y install mosquitto-clients 26 | cat </etc/mosquitto/conf.d/default.conf 27 | allow_anonymous false 28 | persistence true 29 | password_file /etc/mosquitto/passwd 30 | listener 1883 31 | EOF 32 | msg_ok "Installed Mosquitto MQTT Broker" 33 | 34 | motd_ssh 35 | customize 36 | 37 | msg_info "Cleaning up" 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/neo4j-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 10 | color 11 | verb_ip6 12 | catch_errors 13 | setting_up_container 14 | network_check 15 | update_os 16 | 17 | msg_info "Installing Dependencies" 18 | $STD apt-get install -y curl 19 | $STD apt-get install -y sudo 20 | $STD apt-get install -y mc 21 | $STD apt-get install -y gpg 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Neo4j (patience)" 25 | wget -qO- https://debian.neo4j.com/neotechnology.gpg.key | gpg --dearmor -o /etc/apt/keyrings/neotechnology.gpg 26 | echo 'deb [signed-by=/etc/apt/keyrings/neotechnology.gpg] https://debian.neo4j.com stable latest' > /etc/apt/sources.list.d/neo4j.list 27 | $STD apt-get update 28 | $STD apt-get install -y neo4j 29 | sed -i '/server.default_listen_address/s/^#//' /etc/neo4j/neo4j.conf 30 | systemctl enable -q --now neo4j 31 | msg_ok "Installed Neo4j" 32 | 33 | motd_ssh 34 | customize 35 | 36 | msg_info "Cleaning up" 37 | $STD apt-get -y autoremove 38 | $STD apt-get -y autoclean 39 | msg_ok "Cleaned" 40 | -------------------------------------------------------------------------------- /install/nextcloudpi-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing NextCloudPi (Patience)" 23 | $STD apt-get install -y systemd-resolved 24 | systemctl enable -q --now systemd-resolved 25 | cat <<'EOF' >/etc/systemd/resolved.conf 26 | [Resolve] 27 | DNS=8.8.8.8 28 | FallbackDNS=8.8.4.4 29 | EOF 30 | systemctl restart systemd-resolved 31 | $STD bash <(curl -fsSL https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/install.sh) 32 | systemctl disable -q --now systemd-resolved 33 | $STD apt-get remove -y systemd-resolved 34 | msg_ok "Installed NextCloudPi" 35 | 36 | motd_ssh 37 | customize 38 | 39 | msg_info "Cleaning up" 40 | $STD apt-get -y autoremove 41 | $STD apt-get -y autoclean 42 | msg_ok "Cleaned" 43 | -------------------------------------------------------------------------------- /install/nocodb-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing NocoDB" 23 | mkdir -p /opt/nocodb 24 | cd /opt/nocodb 25 | curl -s http://get.nocodb.com/linux-x64 -o nocodb -L 26 | chmod +x nocodb 27 | msg_ok "Installed NocoDB" 28 | 29 | msg_info "Creating Service" 30 | service_path="/etc/systemd/system/nocodb.service" 31 | echo "[Unit] 32 | Description=nocodb 33 | 34 | [Service] 35 | Type=simple 36 | Restart=always 37 | User=root 38 | WorkingDirectory=/opt/nocodb 39 | ExecStart=/opt/nocodb/./nocodb 40 | 41 | [Install] 42 | WantedBy=multi-user.target" >$service_path 43 | systemctl enable -q --now nocodb.service &>/dev/null 44 | msg_ok "Created Service" 45 | 46 | motd_ssh 47 | customize 48 | 49 | msg_info "Cleaning up" 50 | $STD apt-get -y autoremove 51 | $STD apt-get -y autoclean 52 | msg_ok "Cleaned" 53 | -------------------------------------------------------------------------------- /install/notifiarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Notifiarr" 24 | $STD groupadd notifiarr 25 | $STD useradd -g notifiarr notifiarr 26 | wget -qO- https://packagecloud.io/golift/pkgs/gpgkey | gpg --dearmor >/usr/share/keyrings/golift-archive-keyring.gpg 27 | 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 28 | $STD apt-get update 29 | $STD apt-get install -y notifiarr 30 | msg_ok "Installed Notifiarr" 31 | 32 | motd_ssh 33 | customize 34 | 35 | msg_info "Cleaning up" 36 | $STD apt-get -y autoremove 37 | $STD apt-get -y autoclean 38 | msg_ok "Cleaned" 39 | -------------------------------------------------------------------------------- /install/ntfy-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | $STD apt-get install -y apt-transport-https 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing ntfy" 25 | mkdir -p /etc/apt/keyrings 26 | curl -fsSL https://archive.heckel.io/apt/pubkey.txt | gpg --dearmor -o /etc/apt/keyrings/archive.heckel.io.gpg 27 | echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/archive.heckel.io.gpg] https://archive.heckel.io/apt debian main" >/etc/apt/sources.list.d/archive.heckel.io.list 28 | $STD apt-get update 29 | $STD apt-get install -y ntfy 30 | systemctl enable -q --now ntfy 31 | msg_ok "Installed ntfy" 32 | 33 | motd_ssh 34 | customize 35 | 36 | msg_info "Cleaning up" 37 | $STD apt-get -y autoremove 38 | $STD apt-get -y autoclean 39 | msg_ok "Cleaned" 40 | -------------------------------------------------------------------------------- /install/nzbget-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: havardthom 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | 9 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 10 | color 11 | verb_ip6 12 | catch_errors 13 | setting_up_container 14 | network_check 15 | update_os 16 | 17 | msg_info "Installing Dependencies" 18 | $STD apt-get install -y curl 19 | $STD apt-get install -y sudo 20 | $STD apt-get install -y mc 21 | $STD apt-get install -y gpg 22 | $STD apt-get install -y par2 23 | cat </etc/apt/sources.list.d/non-free.list 24 | deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware 25 | EOF 26 | $STD apt-get update 27 | $STD apt-get install -y unrar 28 | rm /etc/apt/sources.list.d/non-free.list 29 | msg_ok "Installed Dependencies" 30 | 31 | msg_info "Installing NZBGet" 32 | mkdir -p /etc/apt/keyrings 33 | curl -fsSL https://nzbgetcom.github.io/nzbgetcom.asc | gpg --dearmor -o /etc/apt/keyrings/nzbgetcom.gpg 34 | echo "deb [signed-by=/etc/apt/keyrings/nzbgetcom.gpg] https://nzbgetcom.github.io/deb stable main" >/etc/apt/sources.list.d/nzbgetcom.list 35 | $STD apt-get update 36 | $STD apt-get install -y nzbget 37 | msg_ok "Installed NZBGet" 38 | 39 | motd_ssh 40 | customize 41 | 42 | msg_info "Cleaning up" 43 | $STD apt-get -y autoremove 44 | $STD apt-get -y autoclean 45 | msg_ok "Cleaned" 46 | -------------------------------------------------------------------------------- /install/ombi-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Ombi" 23 | RELEASE=$(curl -sL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4) 24 | wget -q https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz 25 | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt 26 | mkdir -p /opt/ombi 27 | tar -xzf linux-x64.tar.gz -C /opt/ombi 28 | rm -rf linux-x64.tar.gz 29 | msg_ok "Installed Ombi" 30 | 31 | msg_info "Creating Service" 32 | cat </etc/systemd/system/ombi.service 33 | [Unit] 34 | Description=Ombi 35 | After=syslog.target network-online.target 36 | 37 | [Service] 38 | ExecStart=/opt/ombi/./Ombi 39 | WorkingDirectory=/opt/ombi 40 | Restart=always 41 | 42 | [Install] 43 | WantedBy=multi-user.target 44 | EOF 45 | systemctl enable -q --now ombi.service 46 | msg_ok "Created Service" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/omv-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing OpenMediaVault (Patience)" 24 | wget -qO- https://packages.openmediavault.org/public/archive.key | gpg --dearmor >"/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.gpg" 25 | 26 | cat </etc/apt/sources.list.d/openmediavault.list 27 | deb [signed-by=/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.gpg] http://packages.openmediavault.org/public sandworm main 28 | EOF 29 | 30 | export LANG=C.UTF-8 31 | export DEBIAN_FRONTEND=noninteractive 32 | export APT_LISTCHANGES_FRONTEND=none 33 | $STD apt-get update 34 | apt-get -y --auto-remove --show-upgraded --allow-downgrades --allow-change-held-packages --no-install-recommends --option DPkg::Options::="--force-confdef" --option DPkg::Options::="--force-confold" install openmediavault-keyring openmediavault &>/dev/null 35 | omv-confdbadm populate &>/dev/null 36 | msg_ok "Installed OpenMediaVault" 37 | 38 | motd_ssh 39 | customize 40 | 41 | msg_info "Cleaning up" 42 | $STD apt-get -y autoremove 43 | $STD apt-get -y autoclean 44 | msg_ok "Cleaned" 45 | -------------------------------------------------------------------------------- /install/openhab-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gnupg 21 | $STD apt-get install -y apt-transport-https 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Azul Zulu" 25 | wget -qO /etc/apt/trusted.gpg.d/zulu-repo.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" 26 | wget -q https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb 27 | $STD dpkg -i zulu-repo_1.0.0-3_all.deb 28 | $STD apt-get update 29 | $STD apt-get -y install zulu17-jdk 30 | msg_ok "Installed Azul Zulu" 31 | 32 | msg_info "Installing openHAB" 33 | curl -fsSL "https://openhab.jfrog.io/artifactory/api/gpg/key/public" | gpg --dearmor >openhab.gpg 34 | mv openhab.gpg /usr/share/keyrings 35 | chmod u=rw,g=r,o=r /usr/share/keyrings/openhab.gpg 36 | echo "deb [signed-by=/usr/share/keyrings/openhab.gpg] https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable main" > /etc/apt/sources.list.d/openhab.list 37 | $STD apt update 38 | $STD apt-get -y install openhab 39 | systemctl daemon-reload 40 | systemctl enable -q --now openhab.service 41 | msg_ok "Installed openHAB" 42 | 43 | motd_ssh 44 | customize 45 | 46 | msg_info "Cleaning up" 47 | $STD apt-get -y autoremove 48 | $STD apt-get -y autoclean 49 | msg_ok "Cleaned" 50 | -------------------------------------------------------------------------------- /install/owncast-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies (Patience)" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y ffmpeg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Owncast" 24 | mkdir /opt/owncast 25 | cd /opt/owncast 26 | wget -q $(curl -s https://api.github.com/repos/owncast/owncast/releases/latest | grep download | grep linux-64bit | cut -d\" -f4) 27 | $STD unzip owncast*.zip 28 | rm owncast*.zip 29 | msg_ok "Installed Owncast" 30 | 31 | msg_info "Creating Service" 32 | cat </etc/systemd/system/owncast.service 33 | [Unit] 34 | Description=Owncast 35 | After=syslog.target network-online.target 36 | 37 | [Service] 38 | ExecStart=/opt/owncast/./owncast 39 | WorkingDirectory=/opt/owncast 40 | Restart=always 41 | 42 | [Install] 43 | WantedBy=multi-user.target 44 | EOF 45 | systemctl enable -q --now owncast.service 46 | msg_ok "Created Service" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/pbs-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Proxmox Backup Server" 23 | wget -q https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg 24 | cat <>/etc/apt/sources.list 25 | deb http://download.proxmox.com/debian/pbs bookworm pbs-no-subscription 26 | EOF 27 | $STD apt-get update 28 | $STD apt-get install -y proxmox-backup-server 29 | msg_ok "Installed Proxmox Backup Server" 30 | 31 | motd_ssh 32 | customize 33 | 34 | msg_info "Cleaning up" 35 | $STD apt-get -y autoremove 36 | $STD apt-get -y autoclean 37 | msg_ok "Cleaned" 38 | -------------------------------------------------------------------------------- /install/pocketbase-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Pocketbase" 23 | RELEASE=$(curl -s https://api.github.com/repos/pocketbase/pocketbase/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') 24 | wget -q https://github.com/pocketbase/pocketbase/releases/download/v${RELEASE}/pocketbase_${RELEASE}_linux_amd64.zip -O /tmp/pocketbase.zip 25 | mkdir -p /opt/pocketbase/{pb_public,pb_migrations,pb_hooks} 26 | unzip -q -o /tmp/pocketbase.zip -d /opt/pocketbase 27 | 28 | cat </etc/systemd/system/pocketbase.service 29 | [Unit] 30 | Description = pocketbase 31 | 32 | [Service] 33 | Type = simple 34 | LimitNOFILE = 4096 35 | Restart = always 36 | RestartSec = 5s 37 | StandardOutput = append:/opt/pocketbase/errors.log 38 | StandardError = append:/opt/pocketbase/errors.log 39 | ExecStart = /opt/pocketbase/pocketbase serve --http=0.0.0.0:8080 40 | 41 | [Install] 42 | WantedBy = multi-user.target 43 | EOF 44 | 45 | systemctl enable -q --now pocketbase.service 46 | msg_ok "Installed Pocketbase" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/podman-homeassistant-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Podman" 23 | $STD apt-get -y install podman 24 | $STD systemctl enable --now podman.socket 25 | msg_ok "Installed Podman" 26 | 27 | msg_info "Pulling Home Assistant Image" 28 | $STD podman pull docker.io/homeassistant/home-assistant:stable 29 | msg_ok "Pulled Home Assistant Image" 30 | 31 | msg_info "Installing Home Assistant" 32 | $STD podman volume create hass_config 33 | $STD podman run -d \ 34 | --name homeassistant \ 35 | --restart unless-stopped \ 36 | -v /dev:/dev \ 37 | -v hass_config:/config \ 38 | -v /etc/localtime:/etc/localtime:ro \ 39 | -v /etc/timezone:/etc/timezone:ro \ 40 | --net=host \ 41 | homeassistant/home-assistant:stable 42 | podman generate systemd \ 43 | --new --name homeassistant \ 44 | >/etc/systemd/system/homeassistant.service 45 | $STD systemctl enable --now homeassistant 46 | msg_ok "Installed Home Assistant" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/podman-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Podman" 23 | $STD apt-get -y install podman 24 | $STD systemctl enable --now podman.socket 25 | echo -e 'unqualified-search-registries=["docker.io"]' >> /etc/containers/registries.conf 26 | msg_ok "Installed Podman" 27 | 28 | motd_ssh 29 | customize 30 | 31 | msg_info "Cleaning up" 32 | $STD apt-get -y autoremove 33 | $STD apt-get -y autoclean 34 | msg_ok "Cleaned" 35 | -------------------------------------------------------------------------------- /install/prowlarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Prowlarr" 24 | mkdir -p /var/lib/prowlarr/ 25 | chmod 775 /var/lib/prowlarr/ 26 | $STD wget --content-disposition 'https://prowlarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' 27 | $STD tar -xvzf Prowlarr.master.*.tar.gz 28 | mv Prowlarr /opt 29 | chmod 775 /opt/Prowlarr 30 | msg_ok "Installed Prowlarr" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/prowlarr.service 34 | [Unit] 35 | Description=Prowlarr Daemon 36 | After=syslog.target network.target 37 | [Service] 38 | UMask=0002 39 | Type=simple 40 | ExecStart=/opt/Prowlarr/Prowlarr -nobrowser -data=/var/lib/prowlarr/ 41 | TimeoutStopSec=20 42 | KillMode=process 43 | Restart=on-failure 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl -q daemon-reload 48 | systemctl enable --now -q prowlarr 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | rm -rf Prowlarr.master.*.tar.gz 56 | $STD apt-get -y autoremove 57 | $STD apt-get -y autoclean 58 | msg_ok "Cleaned" 59 | -------------------------------------------------------------------------------- /install/qbittorrent-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing qbittorrent-nox" 23 | $STD apt-get install -y qbittorrent-nox 24 | mkdir -p /.config/qBittorrent/ 25 | cat </.config/qBittorrent/qBittorrent.conf 26 | [Preferences] 27 | WebUI\Password_PBKDF2="@ByteArray(amjeuVrF3xRbgzqWQmes5A==:XK3/Ra9jUmqUc4RwzCtrhrkQIcYczBl90DJw2rT8DFVTss4nxpoRhvyxhCf87ahVE3SzD8K9lyPdpyUCfmVsUg==)" 28 | WebUI\Port=8090 29 | WebUI\UseUPnP=false 30 | WebUI\Username=admin 31 | EOF 32 | msg_ok "qbittorrent-nox" 33 | 34 | msg_info "Creating Service" 35 | cat </etc/systemd/system/qbittorrent-nox.service 36 | [Unit] 37 | Description=qBittorrent client 38 | After=network.target 39 | [Service] 40 | ExecStart=/usr/bin/qbittorrent-nox --webui-port=8090 41 | Restart=always 42 | [Install] 43 | WantedBy=multi-user.target 44 | EOF 45 | systemctl enable -q --now qbittorrent-nox 46 | msg_ok "Created Service" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/radarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Radarr" 24 | mkdir -p /var/lib/radarr/ 25 | chmod 775 /var/lib/radarr/ 26 | $STD wget --content-disposition 'https://radarr.servarr.com/v1/update/master/updatefile?os=linux&runtime=netcore&arch=x64' 27 | $STD tar -xvzf Radarr.master.*.tar.gz 28 | mv Radarr /opt 29 | chmod 775 /opt/Radarr 30 | msg_ok "Installed Radarr" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/radarr.service 34 | [Unit] 35 | Description=Radarr Daemon 36 | After=syslog.target network.target 37 | [Service] 38 | UMask=0002 39 | Type=simple 40 | ExecStart=/opt/Radarr/Radarr -nobrowser -data=/var/lib/radarr/ 41 | TimeoutStopSec=20 42 | KillMode=process 43 | Restart=on-failure 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl -q daemon-reload 48 | systemctl enable --now -q radarr 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | rm -rf Radarr.master.*.tar.gz 56 | $STD apt-get -y autoremove 57 | $STD apt-get -y autoclean 58 | msg_ok "Cleaned" 59 | -------------------------------------------------------------------------------- /install/readarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Readarr" 24 | mkdir -p /var/lib/readarr/ 25 | chmod 775 /var/lib/readarr/ 26 | $STD wget --content-disposition 'https://readarr.servarr.com/v1/update/develop/updatefile?os=linux&runtime=netcore&arch=x64' 27 | $STD tar -xvzf Readarr.develop.*.tar.gz 28 | mv Readarr /opt 29 | chmod 775 /opt/Readarr 30 | msg_ok "Installed Readarr" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/readarr.service 34 | [Unit] 35 | Description=Readarr Daemon 36 | After=syslog.target network.target 37 | [Service] 38 | UMask=0002 39 | Type=simple 40 | ExecStart=/opt/Readarr/Readarr -nobrowser -data=/var/lib/readarr/ 41 | TimeoutStopSec=20 42 | KillMode=process 43 | Restart=on-failure 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl -q daemon-reload 48 | systemctl enable --now -q readarr 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | rm -rf Readarr.develop.*.tar.gz 56 | $STD apt-get -y autoremove 57 | $STD apt-get -y autoclean 58 | msg_ok "Cleaned" 59 | -------------------------------------------------------------------------------- /install/readeck-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Readeck" 23 | LATEST=$(curl -s https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1) 24 | mkdir -p /opt/readeck 25 | cd /opt/readeck 26 | wget -q -O readeck https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64 27 | chmod a+x readeck 28 | msg_ok "Installed Readeck" 29 | 30 | msg_info "Creating Service" 31 | cat </etc/systemd/system/readeck.service 32 | [Unit] 33 | Description=Readeck Service 34 | After=network.target 35 | 36 | [Service] 37 | Environment=READECK_SERVER_HOST=0.0.0.0 38 | Environment=READECK_SERVER_PORT=8000 39 | ExecStart=/opt/readeck/./readeck serve 40 | WorkingDirectory=/opt/readeck 41 | Restart=always 42 | 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now readeck.service 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/redis-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y apt-transport-https 21 | $STD apt-get install -y gpg 22 | $STD apt-get install -y lsb-release 23 | msg_ok "Installed Dependencies" 24 | 25 | msg_info "Installing Redis" 26 | wget -qO- https://packages.redis.io/gpg | gpg --dearmor >/usr/share/keyrings/redis-archive-keyring.gpg 27 | 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 28 | $STD apt-get update 29 | $STD apt-get install -y redis 30 | sed -i 's/^bind .*/bind 0.0.0.0/' /etc/redis/redis.conf 31 | systemctl enable -q --now redis-server.service 32 | msg_ok "Installed Redis" 33 | 34 | motd_ssh 35 | customize 36 | 37 | msg_info "Cleaning up" 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/rtsptoweb-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y git 20 | $STD apt-get install -y mc 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Golang" 24 | $STD wget https://golang.org/dl/go1.20.1.linux-amd64.tar.gz 25 | $STD tar -xzf go1.20.1.linux-amd64.tar.gz -C /usr/local 26 | $STD ln -s /usr/local/go/bin/go /usr/local/bin/go 27 | rm -rf go1.20.1.linux-amd64.tar.gz 28 | msg_ok "Installed Golang" 29 | 30 | msg_info "Installing RTSPtoWeb" 31 | $STD git clone https://github.com/deepch/RTSPtoWeb /opt/rtsptoweb 32 | cat <>/opt/rtsptoweb/start 33 | #!/bin/bash 34 | cd /opt/rtsptoweb && GO111MODULE=on go run *.go 35 | EOF 36 | chmod +x /opt/rtsptoweb/start 37 | msg_ok "Installed RTSPtoWeb" 38 | 39 | msg_info "Creating Service" 40 | service_path="/etc/systemd/system/rtsptoweb.service" 41 | echo "[Unit] 42 | Description=RTSP to Web Streaming Service 43 | After=network.target 44 | 45 | [Service] 46 | Type=simple 47 | User=root 48 | ExecStart=/opt/rtsptoweb/start 49 | 50 | [Install] 51 | WantedBy=multi-user.target" >$service_path 52 | systemctl enable -q --now rtsptoweb 53 | msg_ok "Created Service" 54 | 55 | motd_ssh 56 | customize 57 | 58 | msg_info "Cleaning up" 59 | $STD apt-get -y autoremove 60 | $STD apt-get -y autoclean 61 | msg_ok "Cleaned" 62 | -------------------------------------------------------------------------------- /install/runtipi-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Runtipi (Patience)" 23 | DOCKER_CONFIG_PATH='/etc/docker/daemon.json' 24 | mkdir -p "$(dirname "$DOCKER_CONFIG_PATH")" 25 | echo -e '{\n "log-driver": "journald"\n}' > "$DOCKER_CONFIG_PATH" 26 | cd /opt 27 | wget -q https://raw.githubusercontent.com/runtipi/runtipi/master/scripts/install.sh 28 | chmod +x install.sh 29 | $STD ./install.sh 30 | chmod 666 /opt/runtipi/state/settings.json 31 | msg_ok "Installed Runtipi" 32 | 33 | motd_ssh 34 | customize 35 | 36 | msg_info "Cleaning up" 37 | rm /opt/install.sh 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/sftpgo-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gpg 21 | $STD apt-get install -y sqlite3 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Golang" 25 | set +o pipefail 26 | RELEASE=$(curl -s https://go.dev/dl/ | grep -o "go.*\linux-amd64.tar.gz" | head -n 1) 27 | wget -q https://golang.org/dl/$RELEASE 28 | tar -xzf $RELEASE -C /usr/local 29 | $STD ln -s /usr/local/go/bin/go /usr/local/bin/go 30 | set -o pipefail 31 | msg_ok "Installed Golang" 32 | 33 | msg_info "Installing SFTPGo" 34 | curl -sS https://ftp.osuosl.org/pub/sftpgo/apt/gpg.key | gpg --dearmor -o /usr/share/keyrings/sftpgo-archive-keyring.gpg 35 | 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 36 | $STD apt-get update 37 | $STD apt-get install -y sftpgo 38 | msg_ok "Installed SFTPGo" 39 | 40 | motd_ssh 41 | customize 42 | 43 | msg_info "Cleaning up" 44 | rm -rf $RELEASE 45 | $STD apt-get -y autoremove 46 | $STD apt-get -y autoclean 47 | msg_ok "Cleaned" 48 | -------------------------------------------------------------------------------- /install/sonarr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Sonarr v4" 24 | mkdir -p /var/lib/sonarr/ 25 | chmod 775 /var/lib/sonarr/ 26 | wget -q -O SonarrV4.tar.gz 'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64' 27 | tar -xzf SonarrV4.tar.gz 28 | mv Sonarr /opt 29 | rm -rf SonarrV4.tar.gz 30 | 31 | msg_ok "Installed Sonarr v4" 32 | 33 | msg_info "Creating Service" 34 | cat </etc/systemd/system/sonarr.service 35 | [Unit] 36 | Description=Sonarr Daemon 37 | After=syslog.target network.target 38 | [Service] 39 | Type=simple 40 | ExecStart=/opt/Sonarr/Sonarr -nobrowser -data=/var/lib/sonarr/ 41 | TimeoutStopSec=20 42 | KillMode=process 43 | Restart=on-failure 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl enable -q --now sonarr.service 48 | msg_ok "Created Service" 49 | 50 | motd_ssh 51 | customize 52 | 53 | msg_info "Cleaning up" 54 | $STD apt-get -y autoremove 55 | $STD apt-get -y autoclean 56 | msg_ok "Cleaned" 57 | -------------------------------------------------------------------------------- /install/syncthing-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gnupg 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Syncthing" 24 | curl -sL -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg 25 | 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' 26 | $STD apt-get update 27 | $STD apt-get install -y syncthing 28 | $STD systemctl enable syncthing@root.service 29 | systemctl start syncthing@root.service 30 | sleep 5 31 | sed -i "{s/127.0.0.1:8384/0.0.0.0:8384/g}" /root/.local/state/syncthing/config.xml 32 | systemctl restart syncthing@root.service 33 | msg_ok "Installed Syncthing" 34 | 35 | motd_ssh 36 | customize 37 | 38 | msg_info "Cleaning up" 39 | $STD apt-get -y autoremove 40 | $STD apt-get -y autoclean 41 | msg_ok "Cleaned" 42 | -------------------------------------------------------------------------------- /install/tautulli-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y git 21 | $STD apt-get install -y pip 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Updating Python3" 25 | $STD apt-get install -y \ 26 | python3 \ 27 | python3-dev \ 28 | python3-pip 29 | rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED 30 | msg_ok "Updated Python3" 31 | 32 | msg_info "Installing Tautulli" 33 | cd /opt 34 | $STD git clone https://github.com/Tautulli/Tautulli.git 35 | $STD pip install -q -r /opt/Tautulli/requirements.txt 36 | $STD pip install pyopenssl 37 | msg_ok "Installed Tautulli" 38 | 39 | msg_info "Creating Service" 40 | cat </etc/systemd/system/tautulli.service 41 | [Unit] 42 | Description=Tautulli 43 | After=syslog.target network.target 44 | 45 | [Service] 46 | WorkingDirectory=/opt/Tautulli/ 47 | Restart=on-failure 48 | RestartSec=5 49 | Type=simple 50 | ExecStart=/usr/bin/python3 /opt/Tautulli/Tautulli.py 51 | KillSignal=SIGINT 52 | TimeoutStopSec=20 53 | SyslogIdentifier=tautulli 54 | 55 | [Install] 56 | WantedBy=multi-user.target 57 | EOF 58 | systemctl enable -q --now tautulli 59 | msg_ok "Created Service" 60 | 61 | motd_ssh 62 | customize 63 | 64 | msg_info "Cleaning up" 65 | $STD apt-get -y autoremove 66 | $STD apt-get -y autoclean 67 | msg_ok "Cleaned" 68 | -------------------------------------------------------------------------------- /install/technitiumdns-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing ASP.NET Core Runtime" 23 | wget -q https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb 24 | $STD dpkg -i packages-microsoft-prod.deb 25 | rm -rf packages-microsoft-prod.deb 26 | $STD apt-get update 27 | $STD apt-get install -y aspnetcore-runtime-8.0 28 | msg_ok "Installed ASP.NET Core Runtime" 29 | 30 | msg_info "Installing Technitium DNS" 31 | $STD bash <(curl -fsSL https://download.technitium.com/dns/install.sh) 32 | msg_ok "Installed Technitium DNS" 33 | 34 | motd_ssh 35 | customize 36 | 37 | msg_info "Cleaning up" 38 | $STD apt-get -y autoremove 39 | $STD apt-get -y autoclean 40 | msg_ok "Cleaned" 41 | -------------------------------------------------------------------------------- /install/threadfin-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y sudo 18 | $STD apt-get install -y mc 19 | $STD apt-get install -y curl 20 | $STD apt-get install -y ffmpeg 21 | $STD apt-get install -y vlc 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Threadfin" 25 | mkdir -p /opt/threadfin 26 | wget -q -O /opt/threadfin/threadfin 'https://github.com/Threadfin/Threadfin/releases/latest/download/Threadfin_linux_amd64' 27 | chmod +x /opt/threadfin/threadfin 28 | 29 | msg_ok "Installed Threadfin" 30 | 31 | msg_info "Creating Service" 32 | cat </etc/systemd/system/threadfin.service 33 | [Unit] 34 | Description=Threadfin: M3U Proxy for Plex DVR and Emby/Jellyfin Live TV 35 | After=syslog.target network.target 36 | [Service] 37 | Type=simple 38 | WorkingDirectory=/opt/threadfin 39 | ExecStart=/opt/threadfin/threadfin 40 | TimeoutStopSec=20 41 | KillMode=process 42 | Restart=on-failure 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now threadfin.service 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/traccar-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | RELEASE=$(curl -s https://api.github.com/repos/traccar/traccar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') 23 | msg_info "Installing Traccar v${RELEASE}" 24 | wget -q https://github.com/traccar/traccar/releases/download/v${RELEASE}/traccar-linux-64-${RELEASE}.zip 25 | $STD unzip traccar-linux-64-${RELEASE}.zip 26 | $STD ./traccar.run 27 | systemctl enable -q --now traccar 28 | rm -rf README.txt traccar-linux-64-${RELEASE}.zip traccar.run 29 | msg_ok "Installed Traccar v${RELEASE}" 30 | 31 | motd_ssh 32 | customize 33 | 34 | msg_info "Cleaning up" 35 | $STD apt-get -y autoremove 36 | $STD apt-get -y autoclean 37 | msg_ok "Cleaned" 38 | -------------------------------------------------------------------------------- /install/transmission-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | 23 | msg_info "Installing Transmission" 24 | $STD apt-get install -y transmission-daemon 25 | systemctl stop transmission-daemon 26 | sed -i '{s/"rpc-whitelist-enabled": true/"rpc-whitelist-enabled": false/g; s/"rpc-host-whitelist-enabled": true,/"rpc-host-whitelist-enabled": false,/g}' /etc/transmission-daemon/settings.json 27 | systemctl start transmission-daemon 28 | msg_ok "Installed Transmission" 29 | 30 | motd_ssh 31 | customize 32 | 33 | msg_info "Cleaning up" 34 | $STD apt-get -y autoremove 35 | $STD apt-get -y autoclean 36 | msg_ok "Cleaned" 37 | -------------------------------------------------------------------------------- /install/trilium-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | RELEASE=$(curl -s https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 23 | 24 | msg_info "Installing TriliumNext" 25 | wget -q https://github.com/TriliumNext/Notes/releases/download/${RELEASE}/TriliumNextNotes-${RELEASE}-server-linux-x64.tar.xz 26 | tar -xf TriliumNextNotes-${RELEASE}-server-linux-x64.tar.xz 27 | mv trilium-linux-x64-server /opt/trilium 28 | msg_ok "Installed TriliumNext" 29 | 30 | msg_info "Creating Service" 31 | service_path="/etc/systemd/system/trilium.service" 32 | 33 | echo "[Unit] 34 | Description=Trilium Daemon 35 | After=syslog.target network.target 36 | 37 | [Service] 38 | User=root 39 | Type=simple 40 | ExecStart=/opt/trilium/trilium.sh 41 | WorkingDirectory=/opt/trilium/ 42 | TimeoutStopSec=20 43 | Restart=always 44 | 45 | [Install] 46 | WantedBy=multi-user.target" >$service_path 47 | systemctl enable --now -q trilium 48 | msg_ok "Created Service" 49 | 50 | motd_ssh 51 | customize 52 | 53 | msg_info "Cleaning up" 54 | $STD apt-get -y autoremove 55 | $STD apt-get -y autoclean 56 | rm -rf TriliumNextNotes-${RELEASE}-server-linux-x64.tar.xz 57 | msg_ok "Cleaned" 58 | -------------------------------------------------------------------------------- /install/ubuntu-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | motd_ssh 23 | customize 24 | 25 | msg_info "Cleaning up" 26 | $STD apt-get -y autoremove 27 | $STD apt-get -y autoclean 28 | msg_ok "Cleaned" 29 | -------------------------------------------------------------------------------- /install/umbrel-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Umbrel (Patience)" 23 | DOCKER_CONFIG_PATH='/etc/docker/daemon.json' 24 | mkdir -p $(dirname $DOCKER_CONFIG_PATH) 25 | echo -e '{\n "log-driver": "journald"\n}' > /etc/docker/daemon.json 26 | $STD bash <(curl -fsSL https://umbrel.sh) 27 | systemctl daemon-reload 28 | $STD systemctl enable --now umbrel-startup.service 29 | msg_ok "Installed Umbrel" 30 | 31 | motd_ssh 32 | customize 33 | 34 | msg_info "Cleaning up" 35 | #$STD apt-get autoremove 36 | #$STD apt-get autoclean 37 | msg_ok "Cleaned" 38 | -------------------------------------------------------------------------------- /install/wastebin-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck 5 | # Co-Author: MickLesk (Canbiz) 6 | # License: MIT 7 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 8 | # Source: https://github.com/matze/wastebin 9 | 10 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 11 | color 12 | verb_ip6 13 | catch_errors 14 | setting_up_container 15 | network_check 16 | update_os 17 | 18 | msg_info "Installing Dependencies" 19 | $STD apt-get install -y curl 20 | $STD apt-get install -y sudo 21 | $STD apt-get install -y mc 22 | msg_ok "Installed Dependencies" 23 | 24 | msg_info "Installing Wastebin" 25 | RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 26 | wget -q https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst 27 | tar -xf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst 28 | rm -rf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst 29 | mkdir -p /opt/wastebin 30 | mv wastebin /opt/wastebin/ 31 | chmod +x /opt/wastebin/wastebin 32 | msg_ok "Installed Wastebin" 33 | 34 | msg_info "Creating Service" 35 | cat </etc/systemd/system/wastebin.service 36 | [Unit] 37 | Description=Start Wastebin Service 38 | After=network.target 39 | 40 | [Service] 41 | WorkingDirectory=/opt/wastebin 42 | ExecStart=/opt/wastebin/wastebin 43 | 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl enable -q --now wastebin.service 48 | msg_ok "Created Service" 49 | 50 | motd_ssh 51 | customize 52 | 53 | msg_info "Cleaning up" 54 | $STD apt-get -y autoremove 55 | $STD apt-get -y autoclean 56 | msg_ok "Cleaned" 57 | -------------------------------------------------------------------------------- /install/watchyourlan-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y {curl,sudo,mc,gpg,arp-scan,ieee-data,libwww-perl} 18 | msg_ok "Installed Dependencies" 19 | 20 | msg_info "Installing WatchYourLAN" 21 | RELEASE=$(curl -s https://api.github.com/repos/aceberg/WatchYourLAN/releases/latest | grep -o '"tag_name": *"[^"]*"' | cut -d '"' -f 4) 22 | wget -q https://github.com/aceberg/WatchYourLAN/releases/download/$RELEASE/watchyourlan_${RELEASE}_linux_amd64.deb 23 | $STD dpkg -i watchyourlan_${RELEASE}_linux_amd64.deb 24 | rm watchyourlan_${RELEASE}_linux_amd64.deb 25 | mkdir /data 26 | cat </data/config.yaml 27 | arp_timeout: "500" 28 | auth: false 29 | auth_expire: 7d 30 | auth_password: "" 31 | auth_user: "" 32 | color: dark 33 | dbpath: /data/db.sqlite 34 | guiip: 0.0.0.0 35 | guiport: "8840" 36 | history_days: "30" 37 | iface: eth0 38 | ignoreip: "no" 39 | loglevel: verbose 40 | shoutrrr_url: "" 41 | theme: solar 42 | timeout: 60 43 | EOF 44 | msg_ok "Installed WatchYourLAN" 45 | 46 | msg_info "Creating Service" 47 | sed -i 's|/etc/watchyourlan/config.yaml|/data/config.yaml|' /lib/systemd/system/watchyourlan.service 48 | systemctl enable -q --now watchyourlan.service 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | $STD apt-get -y autoremove 56 | $STD apt-get -y autoclean 57 | msg_ok "Cleaned" 58 | -------------------------------------------------------------------------------- /install/whisparr-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y sqlite3 21 | msg_ok "Installed Dependencies" 22 | 23 | msg_info "Installing Whisparr" 24 | mkdir -p /var/lib/whisparr/ 25 | chmod 775 /var/lib/whisparr/ 26 | $STD wget --content-disposition 'https://whisparr.servarr.com/v1/update/nightly/updatefile?os=linux&runtime=netcore&arch=x64' 27 | $STD tar -xvzf Whisparr.develop.*.tar.gz 28 | mv Whisparr /opt 29 | chmod 775 /opt/Whisparr 30 | msg_ok "Installed Whisparr" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/whisparr.service 34 | [Unit] 35 | Description=whisparr Daemon 36 | After=syslog.target network.target 37 | [Service] 38 | UMask=0002 39 | Type=simple 40 | ExecStart=/opt/Whisparr/Whisparr -nobrowser -data=/var/lib/whisparr/ 41 | TimeoutStopSec=20 42 | KillMode=process 43 | Restart=on-failure 44 | [Install] 45 | WantedBy=multi-user.target 46 | EOF 47 | systemctl -q daemon-reload 48 | systemctl enable --now -q whisparr 49 | msg_ok "Created Service" 50 | 51 | motd_ssh 52 | customize 53 | 54 | msg_info "Cleaning up" 55 | rm -rf Whisparr.develop.*.tar.gz 56 | $STD apt-get -y autoremove 57 | $STD apt-get -y autoclean 58 | msg_ok "Cleaned" 59 | -------------------------------------------------------------------------------- /install/whoogle-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Updating Python3" 23 | $STD apt-get install -y \ 24 | python3 \ 25 | python3-dev \ 26 | python3-pip 27 | rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED 28 | msg_ok "Updated Python3" 29 | 30 | msg_info "Installing Whoogle" 31 | $STD pip install brotli 32 | $STD pip install whoogle-search 33 | 34 | service_path="/etc/systemd/system/whoogle.service" 35 | echo "[Unit] 36 | Description=Whoogle-Search 37 | After=network.target 38 | [Service] 39 | ExecStart=/usr/local/bin/whoogle-search --host 0.0.0.0 40 | Restart=always 41 | User=root 42 | [Install] 43 | WantedBy=multi-user.target" >$service_path 44 | 45 | $STD systemctl enable --now whoogle.service 46 | msg_ok "Installed Whoogle" 47 | 48 | motd_ssh 49 | customize 50 | 51 | msg_info "Cleaning up" 52 | $STD apt-get -y autoremove 53 | $STD apt-get -y autoclean 54 | msg_ok "Cleaned" 55 | -------------------------------------------------------------------------------- /install/yunohost-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | $STD apt-get install -y gnupg 21 | $STD apt-get install -y apt-transport-https 22 | $STD apt-get install -y lsb-release 23 | $STD apt-get install -y ca-certificates 24 | msg_ok "Installed Dependencies" 25 | 26 | msg_info "Installing YunoHost (Patience)" 27 | touch /etc/.pve-ignore.resolv.conf 28 | curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg 29 | $STD bash <(curl -fsSL https://install.yunohost.org) -a 30 | msg_ok "Installed YunoHost" 31 | 32 | motd_ssh 33 | customize 34 | 35 | msg_info "Cleaning up" 36 | $STD apt-get -y autoremove 37 | $STD apt-get -y autoclean 38 | msg_ok "Cleaned" 39 | -------------------------------------------------------------------------------- /install/zoraxy-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Zoraxy (Patience)" 23 | RELEASE=$(curl -s https://api.github.com/repos/tobychui/zoraxy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 24 | wget -q "https://github.com/tobychui/zoraxy/releases/download/${RELEASE}/zoraxy_linux_amd64" 25 | mkdir -p /opt/zoraxy 26 | mv zoraxy_linux_amd64 /opt/zoraxy/zoraxy 27 | chmod +x /opt/zoraxy/zoraxy 28 | ln -s /opt/zoraxy/zoraxy /usr/local/bin/zoraxy 29 | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt 30 | msg_ok "Installed Zoraxy" 31 | 32 | msg_info "Creating Service" 33 | cat </etc/systemd/system/zoraxy.service 34 | [Unit] 35 | Description=General purpose request proxy and forwarding tool 36 | After=syslog.target network-online.target 37 | 38 | [Service] 39 | ExecStart=/opt/zoraxy/./zoraxy 40 | WorkingDirectory=/opt/zoraxy/ 41 | Restart=always 42 | 43 | [Install] 44 | WantedBy=multi-user.target 45 | EOF 46 | systemctl enable -q --now zoraxy.service 47 | msg_ok "Created Service" 48 | 49 | motd_ssh 50 | customize 51 | 52 | msg_info "Cleaning up" 53 | $STD apt-get -y autoremove 54 | $STD apt-get -y autoclean 55 | msg_ok "Cleaned" 56 | -------------------------------------------------------------------------------- /install/zwave-js-ui-install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" 9 | color 10 | verb_ip6 11 | catch_errors 12 | setting_up_container 13 | network_check 14 | update_os 15 | 16 | msg_info "Installing Dependencies" 17 | $STD apt-get install -y curl 18 | $STD apt-get install -y sudo 19 | $STD apt-get install -y mc 20 | msg_ok "Installed Dependencies" 21 | 22 | msg_info "Installing Z-Wave JS UI" 23 | mkdir /opt/zwave-js-ui 24 | cd /opt/zwave-js-ui 25 | 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) }') 26 | $STD wget https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip 27 | $STD unzip zwave-js-ui-${RELEASE}-linux.zip 28 | msg_ok "Installed Z-Wave JS UI" 29 | 30 | msg_info "Creating Service" 31 | service_path="/etc/systemd/system/zwave-js-ui.service" 32 | echo "[Unit] 33 | Description=zwave-js-ui 34 | Wants=network-online.target 35 | After=network-online.target 36 | [Service] 37 | User=root 38 | WorkingDirectory=/opt/zwave-js-ui 39 | ExecStart=/opt/zwave-js-ui/zwave-js-ui-linux 40 | [Install] 41 | WantedBy=multi-user.target" >$service_path 42 | systemctl start zwave-js-ui 43 | $STD systemctl enable zwave-js-ui 44 | msg_ok "Created Service" 45 | 46 | motd_ssh 47 | customize 48 | 49 | msg_info "Cleaning up" 50 | rm zwave-js-ui-${RELEASE}-linux.zip 51 | $STD apt-get -y autoremove 52 | $STD apt-get -y autoclean 53 | msg_ok "Cleaned" 54 | -------------------------------------------------------------------------------- /misc/clean.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info() { 9 | clear 10 | cat <<"EOF" 11 | ________ __ _ ________ 12 | / ____/ /__ ____ _____ / / | |/ / ____/ 13 | / / / / _ \/ __ `/ __ \ / / | / / 14 | / /___/ / __/ /_/ / / / / / /___/ / /___ 15 | \____/_/\___/\__,_/_/ /_/ /_____/_/|_\____/ 16 | 17 | EOF 18 | } 19 | BL=$(echo "\033[36m") 20 | GN=$(echo "\033[1;92m") 21 | CL=$(echo "\033[m") 22 | name=$(hostname) 23 | header_info 24 | echo -e "${BL}[Info]${GN} Cleaning $name${CL} \n" 25 | cache=$(find /var/cache/ -type f) 26 | if [[ -z "$cache" ]]; then 27 | echo -e "It appears there are no cached files on your system. \n" 28 | sleep 2 29 | else 30 | find /var/cache -type f -delete 31 | echo "Successfully Removed Cache" 32 | sleep 2 33 | fi 34 | header_info 35 | echo -e "${BL}[Info]${GN} Cleaning $name${CL} \n" 36 | logs=$(find /var/log/ -type f) 37 | if [[ -z "$logs" ]]; then 38 | echo -e "It appears there are no logs on your system. \n" 39 | sleep 2 40 | else 41 | find /var/log -type f -delete 42 | echo "Successfully Removed Logs" 43 | sleep 2 44 | fi 45 | header_info 46 | echo -e "${BL}[Info]${GN} Cleaning $name${CL} \n" 47 | echo -e "${GN}Populating apt lists${CL} \n" 48 | -------------------------------------------------------------------------------- /misc/daemonsync_2.2.0.0059_amd64.deb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/daemonsync_2.2.0.0059_amd64.deb -------------------------------------------------------------------------------- /misc/images/cpu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/cpu.png -------------------------------------------------------------------------------- /misc/images/daemon-sync.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/daemon-sync.png -------------------------------------------------------------------------------- /misc/images/filebrowser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/filebrowser.png -------------------------------------------------------------------------------- /misc/images/haos.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/haos.png -------------------------------------------------------------------------------- /misc/images/heimdall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/heimdall.png -------------------------------------------------------------------------------- /misc/images/logo-81x112.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/logo-81x112.png -------------------------------------------------------------------------------- /misc/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/logo.png -------------------------------------------------------------------------------- /misc/images/monitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/monitor.png -------------------------------------------------------------------------------- /misc/images/nocodb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/nocodb.png -------------------------------------------------------------------------------- /misc/images/openobsecure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/openobsecure.png -------------------------------------------------------------------------------- /misc/images/photoprism.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/photoprism.png -------------------------------------------------------------------------------- /misc/images/pimox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/pimox.png -------------------------------------------------------------------------------- /misc/images/processor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/processor.png -------------------------------------------------------------------------------- /misc/images/whoogle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tteck/Proxmox/930760840c27ad92430c41ae1c0ff2a886d6ba63/misc/images/whoogle.png -------------------------------------------------------------------------------- /misc/olivetin.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | function header_info { 9 | clear 10 | cat <<"EOF" 11 | ____ ___ _______ 12 | / __ \/ (_) _____/_ __(_)___ 13 | / / / / / / | / / _ \/ / / / __ \ 14 | / /_/ / / /| |/ / __/ / / / / / / 15 | \____/_/_/ |___/\___/_/ /_/_/ /_/ 16 | 17 | EOF 18 | } 19 | 20 | IP=$(hostname -I | awk '{print $1}') 21 | YW=$(echo "\033[33m") 22 | BL=$(echo "\033[36m") 23 | GN=$(echo "\033[1;92m") 24 | CL=$(echo "\033[m") 25 | BFR="\\r\\033[K" 26 | HOLD="-" 27 | CM="${GN}✓${CL}" 28 | APP="OliveTin" 29 | hostname="$(hostname)" 30 | set-e 31 | header_info 32 | 33 | while true; do 34 | read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn 35 | case $yn in 36 | [Yy]*) break ;; 37 | [Nn]*) exit ;; 38 | *) echo "Please answer yes or no." ;; 39 | esac 40 | done 41 | header_info 42 | 43 | function msg_info() { 44 | local msg="$1" 45 | echo -ne " ${HOLD} ${YW}${msg}..." 46 | } 47 | 48 | function msg_ok() { 49 | local msg="$1" 50 | echo -e "${BFR} ${CM} ${GN}${msg}${CL}" 51 | } 52 | 53 | msg_info "Installing ${APP}" 54 | wget -q https://github.com/OliveTin/OliveTin/releases/latest/download/OliveTin_linux_amd64.deb 55 | dpkg -i OliveTin_linux_amd64.deb &>/dev/null 56 | systemctl enable --now OliveTin &>/dev/null 57 | rm OliveTin_linux_amd64.deb 58 | msg_ok "Installed ${APP} on $hostname" 59 | 60 | msg_ok "Completed Successfully!\n" 61 | echo -e "${APP} should be reachable by going to the following URL. 62 | ${BL}http://$IP:1337${CL} \n" 63 | -------------------------------------------------------------------------------- /misc/usb-passthrough.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2021-2024 tteck 4 | # Author: tteck (tteckster) 5 | # License: MIT 6 | # https://github.com/tteck/Proxmox/raw/main/LICENSE 7 | 8 | echo -e "\e[1;33m This script will allow USB passthrough to a PRIVILEGED LXC Container ONLY\e[0m" 9 | while true; do 10 | read -p "Did you replace 106 with your LXC ID? Proceed(y/n)?" yn 11 | case $yn in 12 | [Yy]*) break ;; 13 | [Nn]*) exit ;; 14 | *) echo "Please answer yes or no." ;; 15 | esac 16 | done 17 | 18 | TEMP_DIR=$(mktemp -d) 19 | pushd $TEMP_DIR >/dev/null 20 | CHAR_DEVS+=("166:.*") 21 | CHAR_DEVS+=("188:.*") 22 | CHAR_DEVS+=("189:.*") 23 | 24 | for char_dev in ${CHAR_DEVS[@]}; do 25 | [ ! -z "${CHAR_DEV_STRING-}" ] && CHAR_DEV_STRING+=" -o" 26 | CHAR_DEV_STRING+=" -regex \".*/${char_dev}\"" 27 | done 28 | 29 | read -r -d '' HOOK_SCRIPT <<-EOF || true 30 | for char_dev in \$(find /sys/dev/char -regextype sed $CHAR_DEV_STRING); do 31 | dev="/dev/\$(sed -n "/DEVNAME/ s/^.*=\(.*\)$/\1/p" \${char_dev}/uevent)"; 32 | mkdir -p \$(dirname \${LXC_ROOTFS_MOUNT}\${dev}); 33 | for link in \$(udevadm info --query=property \$dev | sed -n "s/DEVLINKS=//p"); do 34 | mkdir -p \${LXC_ROOTFS_MOUNT}\$(dirname \$link); 35 | cp -dpR \$link \${LXC_ROOTFS_MOUNT}\${link}; 36 | done; 37 | cp -dpR \$dev \${LXC_ROOTFS_MOUNT}\${dev}; 38 | done; 39 | EOF 40 | HOOK_SCRIPT=${HOOK_SCRIPT//$'\n'/} 41 | 42 | CTID=$1 43 | CTID_CONFIG_PATH=/etc/pve/lxc/${CTID}.conf 44 | sed '/autodev/d' $CTID_CONFIG_PATH >CTID.conf 45 | cat CTID.conf >$CTID_CONFIG_PATH 46 | 47 | cat <>$CTID_CONFIG_PATH 48 | lxc.autodev: 1 49 | lxc.hook.autodev: bash -c '$HOOK_SCRIPT' 50 | EOF 51 | echo -e "\e[1;33m Finished....Reboot ${CTID} LXC to apply the changes \e[0m" 52 | --------------------------------------------------------------------------------