diff --git a/CHANGELOG.md b/CHANGELOG.md index f8f1fb140..8a7bb37ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,15 +7,23 @@

All notable changes to this project will be documented in this file.

-- Be cautious of copycat or coat-tailing sites that exploit the project's popularity with potentially malicious intent. Please only trust information from https://Helper-Scripts.com/ or https://tteck.github.io/Proxmox/. +> [!WARNING] +Be cautious of copycat or coat-tailing sites that exploit the project's popularity with potentially malicious intent. Please only trust information from https://Helper-Scripts.com/ or https://tteck.github.io/Proxmox/. - All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment. +## 2024-08-06 + +### Changed + +- **lldap LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/lldap-install.sh) + - NEW Script + ## 2024-07-26 ### Changed -- **Gitea LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/gitea-install.sh) +- **Gitea LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/gitea-install.sh) - NEW Script ## 2024-06-30 @@ -29,9 +37,9 @@ ### Changed -- **Kubo LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/kubo-install.sh) +- **Kubo LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/kubo-install.sh) - NEW Script -- **RabbitMQ LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/rabbitmq-install.sh) +- **RabbitMQ LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/rabbitmq-install.sh) - NEW Script - **Scrutiny LXC** - Removed from website, broken. @@ -47,27 +55,27 @@ ### Changed -- **MySpeed LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/myspeed-install.sh) +- **MySpeed LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/myspeed-install.sh) - NEW Script ## 2024-06-13 ### Changed -- **PeaNUT LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/peanut-install.sh) +- **PeaNUT LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/peanut-install.sh) - NEW Script - **Website** - If the Changelog has changed recently, the link on the website will pulse. -- **Spoolman LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/spoolman-install.sh) +- **Spoolman LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/spoolman-install.sh) - NEW Script ## 2024-06-12 ### Changed -- **MeTube LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/metube-install.sh) +- **MeTube LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/metube-install.sh) - NEW Script -- **Matterbridge LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/matterbridge-install.sh) +- **Matterbridge LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/matterbridge-install.sh) - NEW Script - **Website** - Reopen the gh-pages site (https://tteck.github.io/Proxmox/) @@ -76,14 +84,14 @@ ### Changed -- **Zabbix LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/zabbix-install.sh) +- **Zabbix LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/zabbix-install.sh) - NEW Script ## 2024-06-06 ### Changed -- **Petio LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/petio-install.sh) +- **Petio LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/petio-install.sh) - NEW Script - **Website** - Important notices will now be displayed on the landing page. @@ -92,7 +100,7 @@ ### Changed -- **FlareSolverr LXC** [(View Source)](https://raw.githubusercontent.com/tteck/Proxmox/main/install/flaresolverr-install.sh) +- **FlareSolverr LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/flaresolverr-install.sh) - NEW Script ## 2024-05-31 diff --git a/ct/linkwarden.sh b/ct/linkwarden.sh index ca6ff6346..f6b5fc68d 100644 --- a/ct/linkwarden.sh +++ b/ct/linkwarden.sh @@ -67,6 +67,7 @@ if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP} git pull yarn npx playwright install-deps + yarn playwright install yarn prisma generate yarn build yarn prisma migrate deploy diff --git a/ct/lldap.sh b/ct/lldap.sh new file mode 100644 index 000000000..050b471d2 --- /dev/null +++ b/ct/lldap.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env bash +source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) +# Copyright (c) 2021-2024 tteck +# Author: tteck (tteckster) +# Co-Author: remz1337 +# License: MIT +# https://github.com/tteck/Proxmox/raw/main/LICENSE + +function header_info { +clear +cat <<"EOF" + ____ __ + / / /___/ /___ _____ + / / / __ / __ `/ __ \ + / / / /_/ / /_/ / /_/ / +/_/_/\__,_/\__,_/ .___/ + /_/ + +EOF +} +header_info +echo -e "Loading..." +APP="lldap" +var_disk="4" +var_cpu="1" +var_ram="512" +var_os="debian" +var_version="12" +variables +color +catch_errors + +function default_settings() { + CT_TYPE="1" + PW="" + CT_ID=$NEXTID + HN=$NSAPP + DISK_SIZE="$var_disk" + CORE_COUNT="$var_cpu" + RAM_SIZE="$var_ram" + BRG="vmbr0" + NET="dhcp" + GATE="" + APT_CACHER="" + APT_CACHER_IP="" + DISABLEIP6="no" + MTU="" + SD="" + NS="" + MAC="" + VLAN="" + SSH="no" + VERB="no" + echo_default +} + +function update_script() { +header_info +if [[ ! -f /etc/systemd/system/lldap.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi +msg_info "Updating $APP" +apt update +apt upgrade -y lldap +msg_ok "Updated $APP" +exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${APP} should be reachable by going to the following URL. + ${BL}http://${IP}:17170${CL} \n" diff --git a/ct/n8n.sh b/ct/n8n.sh index 6e1722e32..a2fc922e0 100644 --- a/ct/n8n.sh +++ b/ct/n8n.sh @@ -65,6 +65,7 @@ if [[ ! -f /etc/systemd/system/n8n.service ]]; then msg_error "No ${APP} Install fi msg_info "Updating ${APP} LXC" npm update -g n8n &>/dev/null +systemctl restart n8n msg_ok "Updated Successfully" exit } diff --git a/ct/wastebin.sh b/ct/wastebin.sh index a5e2fc965..57a09aa66 100644 --- a/ct/wastebin.sh +++ b/ct/wastebin.sh @@ -23,8 +23,8 @@ header_info echo -e "Loading..." APP="Wastebin" var_disk="4" -var_cpu="4" -var_ram="2048" +var_cpu="1" +var_ram="1024" var_os="debian" var_version="12" variables @@ -58,39 +58,31 @@ function default_settings() { function update_script() { header_info if [[ ! -d /opt/wastebin ]]; then msg_error "No ${APP} Installation Found!"; exit; fi -if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then - read -r -p "Warning: Storage is dangerously low, continue anyway? " prompt - [[ ${prompt,,} =~ ^(y|yes)$ ]] || exit -fi -msg_info "Stopping Wastebin" -systemctl stop wastebin -msg_ok "Wastebin Stopped" - -msg_info "Updating Wastebin" RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -cd /opt -if [ -d wastebin_bak ]; then - rm -rf wastebin_bak +if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then + msg_info "Stopping Wastebin" + systemctl stop wastebin + msg_ok "Wastebin Stopped" + + msg_info "Updating Wastebin" + wget -q https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst + tar -xf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst + cp -f wastebin /opt/wastebin/ + chmod +x /opt/wastebin/wastebin + echo "${RELEASE}" >/opt/${APP}_version.txt + msg_ok "Updated Wastebin" + + msg_info "Starting Wastebin" + systemctl start wastebin + msg_ok "Started Wastebin" + + msg_info "Cleaning Up" + rm -rf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst + msg_ok "Cleaned" + msg_ok "Updated Successfully" +else + msg_ok "No update required. ${APP} is already at ${RELEASE}" fi -mv wastebin wastebin_bak -wget -q "https://github.com/matze/wastebin/archive/refs/tags/${RELEASE}.zip" -unzip -q ${RELEASE}.zip -mv wastebin-${RELEASE} /opt/wastebin -cd /opt/wastebin -cargo update -q -cargo build -q --release -msg_ok "Updated Wastebin" - -msg_info "Starting Wastebin" -systemctl start wastebin -msg_ok "Started Wastebin" - -msg_info "Cleaning Up" -cd /opt -rm -R ${RELEASE}.zip -rm -R wastebin_bak -msg_ok "Cleaned" -msg_ok "Updated Successfully" exit } @@ -98,10 +90,6 @@ start build_container description -msg_info "Setting Container to Normal Resources" -pct set $CTID -cores 2 -msg_ok "Set Container to Normal Resources" - msg_ok "Completed Successfully!\n" echo -e "${APP} Setup should be reachable by going to the following URL. ${BL}http://${IP}:8088${CL} \n" diff --git a/install/linkwarden-install.sh b/install/linkwarden-install.sh index b2a678686..47116018a 100644 --- a/install/linkwarden-install.sh +++ b/install/linkwarden-install.sh @@ -76,6 +76,7 @@ RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/la echo "${RELEASE}" >/opt/${APPLICATION}_version.txt $STD yarn $STD npx playwright install-deps +$STD yarn playwright install IP=$(hostname -I | awk '{print $1}') SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)" env_path="/opt/linkwarden/.env" diff --git a/install/lldap-install.sh b/install/lldap-install.sh new file mode 100644 index 000000000..0bdebe94d --- /dev/null +++ b/install/lldap-install.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2024 tteck +# Author: tteck (tteckster) +# Co-Author: remz1337 +# License: MIT +# https://github.com/tteck/Proxmox/raw/main/LICENSE + +source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +msg_info "Installing Dependencies" +$STD apt-get install -y curl +$STD apt-get install -y sudo +$STD apt-get install -y mc +$STD apt-get install -y gpg +msg_ok "Installed Dependencies" + +msg_info "Installing lldap" +source /etc/os-release +os=$ID +if [ "$os" == "ubuntu" ]; then + DISTRO="xUbuntu" +else + DISTRO="${os^}" +fi +echo "deb http://download.opensuse.org/repositories/home:/Masgalor:/LLDAP/${DISTRO}_${VERSION_ID}/ /" >/etc/apt/sources.list.d/home:Masgalor:LLDAP.list +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 +$STD apt update +$STD apt install -y lldap +systemctl enable -q --now lldap +msg_ok "Installed lldap" + +motd_ssh +customize + +msg_info "Cleaning up" +$STD apt-get -y autoremove +$STD apt-get -y autoclean +msg_ok "Cleaned" diff --git a/install/octoprint-install.sh b/install/octoprint-install.sh index 7b950772e..ede7d9eb5 100644 --- a/install/octoprint-install.sh +++ b/install/octoprint-install.sh @@ -39,6 +39,7 @@ msg_info "Creating user octoprint" useradd -m -s /bin/bash -p $(openssl passwd -1 octoprint) octoprint usermod -aG sudo,tty,dialout octoprint chown -R octoprint:octoprint /opt +echo "octoprint ALL=NOPASSWD: $(command -v systemctl) restart octoprint, $(command -v reboot), $(command -v poweroff)" > /etc/sudoers.d/octoprint msg_ok "Created user octoprint" msg_info "Installing OctoPrint" diff --git a/install/wastebin-install.sh b/install/wastebin-install.sh index 5b9f5ce0c..39992d161 100644 --- a/install/wastebin-install.sh +++ b/install/wastebin-install.sh @@ -15,33 +15,23 @@ setting_up_container network_check update_os -msg_info "Installing Dependencies (Patience)" -$STD apt-get install -y --no-install-recommends \ - build-essential \ - unzip \ - curl \ - sudo \ - git \ - make \ - mc \ - wget \ - ca-certificates \ - openssh-server +msg_info "Installing Dependencies" +$STD apt-get install -y curl +$STD apt-get install -y sudo +$STD apt-get install -y mc +$STD apt-get install -y wget +$STD apt-get install -y ca-certificates +$STD apt-get install -y openssh-server msg_ok "Installed Dependencies" -msg_info "Installing Rust (Patience)" -$STD bash <(curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs) -y -source ~/.cargo/env -msg_ok "Installed Rust" - -msg_info "Installing Wastebin (Patience)" +msg_info "Installing Wastebin" RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') -wget -q "https://github.com/matze/wastebin/archive/refs/tags/${RELEASE}.zip" -unzip -q ${RELEASE}.zip -mv wastebin-${RELEASE} /opt/wastebin -rm -R ${RELEASE}.zip -cd /opt/wastebin -cargo build -q --release +wget -q https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst +tar -xf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst +rm -rf wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst +mkdir -p /opt/wastebin +mv wastebin /opt/wastebin/ +chmod +x /opt/wastebin/wastebin msg_ok "Installed Wastebin" msg_info "Creating Service" @@ -51,9 +41,8 @@ Description=Start Wastebin Service After=network.target [Service] -User=root WorkingDirectory=/opt/wastebin -ExecStart=/root/.cargo/bin/cargo run --release --quiet +ExecStart=/opt/wastebin/wastebin [Install] WantedBy=multi-user.target diff --git a/misc/install.func b/misc/install.func index 861d9ab8a..105eea3e7 100644 --- a/misc/install.func +++ b/misc/install.func @@ -117,7 +117,7 @@ network_check() { trap - ERR ipv4_connected=false ipv6_connected=false - + sleep 1 # Check IPv4 connectivity if ping -c 1 -W 1 1.1.1.1 &>/dev/null; then msg_ok "IPv4 Internet Connected";