From 1b8564905713ef06c8267bd6e7b1ee27b6d05972 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 08:34:29 +0000 Subject: [PATCH 01/33] Added install and ct files --- ct/byparr.sh | 53 +++++++++++++++++++++++++++++++++++++++ install/byparr-install.sh | 39 ++++++++++++++++++++++++++++ misc/build.func | 18 ++++++------- misc/install.func | 8 +++--- 4 files changed, 105 insertions(+), 13 deletions(-) create mode 100644 ct/byparr.sh create mode 100644 install/byparr-install.sh diff --git a/ct/byparr.sh b/ct/byparr.sh new file mode 100644 index 000000000..cbd75c2c3 --- /dev/null +++ b/ct/byparr.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/Lissy93/web-check + +APP="Byparr" +var_tags="${var_tags:-proxy}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-4}" +var_os="${var_os:-debian}" +var_version="${var_version:-13}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/Byparr ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + + if check_for_gh_release "Byparr" "ThePhaseless/Byparr"; then + msg_info "Stopping Service" + systemctl stop byparr + msg_ok "Stopped Service" + + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + + msg_info "Starting Service" + systemctl start byparr + msg_ok "Started Service" + msg_ok "Updated Successfully!" + fi + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8191${CL}" diff --git a/install/byparr-install.sh b/install/byparr-install.sh new file mode 100644 index 000000000..1c3acff31 --- /dev/null +++ b/install/byparr-install.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/ThePhaseless/Byparr + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + +setup_uv + +msg_info "Creating Service" +cat </etc/systemd/system/byparr.service +[Unit] +Description=Byparr +After=network.target +[Service] +Type=simple +WorkingDirectory=/opt/Byparr +ExecStart=/usr/local/bin/uv run python3 main.py +Restart=on-failure +RestartSec=10 +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now byparr +msg_ok "Created Service" + +motd_ssh +customize +cleanup_lxc diff --git a/misc/build.func b/misc/build.func index 29e18d9ef..db579eccb 100644 --- a/misc/build.func +++ b/misc/build.func @@ -155,17 +155,17 @@ variables() { # - Initialize error traps after loading # ------------------------------------------------------------------------------ -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/api.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/api.func) if command -v curl >/dev/null 2>&1; then - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via curl" elif command -v wget >/dev/null 2>&1; then - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via wget" @@ -2032,7 +2032,7 @@ configure_ssh_settings() { # - Otherwise: shows update/setting menu # ------------------------------------------------------------------------------ start() { - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) if command -v pveversion >/dev/null 2>&1; then install_script || return 0 return 0 @@ -2139,9 +2139,9 @@ build_container() { TEMP_DIR=$(mktemp -d) pushd "$TEMP_DIR" >/dev/null if [ "$var_os" == "alpine" ]; then - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/alpine-install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/alpine-install.func)" else - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/install.func)" fi export DIAGNOSTICS="$DIAGNOSTICS" export RANDOM_UUID="$RANDOM_UUID" @@ -2517,7 +2517,7 @@ EOF' install_ssh_keys_into_ct # Run application installer - if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/install/${var_install}.sh)"; then + if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/install/${var_install}.sh)"; then local exit_code=$? # Try to copy installation log from container before exiting if [[ -n "$CTID" && -n "${SESSION_ID:-}" ]]; then diff --git a/misc/install.func b/misc/install.func index f741b921d..14ef2da08 100644 --- a/misc/install.func +++ b/misc/install.func @@ -9,8 +9,8 @@ if ! command -v curl >/dev/null 2>&1; then apt-get update >/dev/null 2>&1 apt-get install -y curl >/dev/null 2>&1 fi -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors @@ -147,7 +147,7 @@ EOF $STD apt-get -o Dpkg::Options::="--force-confold" -y dist-upgrade rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED msg_ok "Updated Container OS" - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) } # This function modifies the message of the day (motd) and SSH settings @@ -195,7 +195,7 @@ EOF systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') msg_ok "Customized Container" fi - echo "bash -c \"\$(curl -fsSL https://github.com/community-scripts/ProxmoxVED/raw/main/ct/${app}.sh)\"" >/usr/bin/update + echo "bash -c \"\$(curl -fsSL https://github.com/luismco/ProxmoxVED/refs/heads/byparr/ct/${app}.sh)\"" >/usr/bin/update chmod +x /usr/bin/update if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then mkdir -p /root/.ssh From 34e6ebde3c23c9d076995df14ea256ca46f2dea8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:10:22 +0000 Subject: [PATCH 02/33] Added sync command --- install/byparr-install.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 1c3acff31..60b04848a 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,6 +17,11 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv +msg_info "Setup Byparr" +cd /opt/Byparr +$STD /usr/local/bin/uv sync +msg_ok "Setup Byparr" + msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From f4298e3df381b9267fde22d4b2d5c62a19211493 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:24:31 +0000 Subject: [PATCH 03/33] removed cleanup_lxc due to error --- install/byparr-install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 60b04848a..22bbc8098 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -41,4 +41,3 @@ msg_ok "Created Service" motd_ssh customize -cleanup_lxc From 6cc46f7e60911f2426ea946cfb726225327f52b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:32:16 +0000 Subject: [PATCH 04/33] removed debugging step --- install/byparr-install.sh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 22bbc8098..ab16d97bc 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,11 +17,6 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv -msg_info "Setup Byparr" -cd /opt/Byparr -$STD /usr/local/bin/uv sync -msg_ok "Setup Byparr" - msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From 38faeee12e7531872d678deeed4c5f714a93e3ed Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 10:41:29 +0000 Subject: [PATCH 05/33] added chromium-common --- install/byparr-install.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index ab16d97bc..af17218b6 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -13,6 +13,10 @@ setting_up_container network_check update_os +msg_info "Installing Dependencies" +$STD apt -y install chromium-common +msg_ok "Installed Dependencies" + fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv From 73d5f5afec8f961a12aac53e9080123d06554ef2 Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 10:55:58 +0000 Subject: [PATCH 06/33] added libasound2 --- install/byparr-install.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index af17218b6..038b599ff 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -14,7 +14,9 @@ network_check update_os msg_info "Installing Dependencies" -$STD apt -y install chromium-common +$STD apt -y install \ + chromium-common \ + libasound2 msg_ok "Installed Dependencies" fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" From a67dd2a4250f64f654d614d40103c08d21f9a771 Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 11:51:48 +0000 Subject: [PATCH 07/33] added dependencies --- install/byparr-install.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 038b599ff..a2c1a339a 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -15,8 +15,13 @@ update_os msg_info "Installing Dependencies" $STD apt -y install \ - chromium-common \ - libasound2 + xauth \ + xvfb \ + scrot \ + curl \ + chromium \ + chromium-driver \ + ca-certificates msg_ok "Installed Dependencies" fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" From 773e250193e01c16bf79296a565153761362cf75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 08:34:29 +0000 Subject: [PATCH 08/33] Added install and ct files --- ct/byparr.sh | 53 ++++++++++++++++++++++++++++++++++++ install/byparr-install.sh | 39 +++++++++++++++++++++++++++ misc/build.func | 57 ++++++++------------------------------- misc/install.func | 42 ++++++++++++++--------------- 4 files changed, 124 insertions(+), 67 deletions(-) create mode 100644 ct/byparr.sh create mode 100644 install/byparr-install.sh diff --git a/ct/byparr.sh b/ct/byparr.sh new file mode 100644 index 000000000..cbd75c2c3 --- /dev/null +++ b/ct/byparr.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/Lissy93/web-check + +APP="Byparr" +var_tags="${var_tags:-proxy}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-4}" +var_os="${var_os:-debian}" +var_version="${var_version:-13}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/Byparr ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + + if check_for_gh_release "Byparr" "ThePhaseless/Byparr"; then + msg_info "Stopping Service" + systemctl stop byparr + msg_ok "Stopped Service" + + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + + msg_info "Starting Service" + systemctl start byparr + msg_ok "Started Service" + msg_ok "Updated Successfully!" + fi + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8191${CL}" diff --git a/install/byparr-install.sh b/install/byparr-install.sh new file mode 100644 index 000000000..1c3acff31 --- /dev/null +++ b/install/byparr-install.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/ThePhaseless/Byparr + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + +setup_uv + +msg_info "Creating Service" +cat </etc/systemd/system/byparr.service +[Unit] +Description=Byparr +After=network.target +[Service] +Type=simple +WorkingDirectory=/opt/Byparr +ExecStart=/usr/local/bin/uv run python3 main.py +Restart=on-failure +RestartSec=10 +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now byparr +msg_ok "Created Service" + +motd_ssh +customize +cleanup_lxc diff --git a/misc/build.func b/misc/build.func index a4e1a2245..1578fe4eb 100644 --- a/misc/build.func +++ b/misc/build.func @@ -184,17 +184,17 @@ variables() { # - Initialize error traps after loading # ------------------------------------------------------------------------------ -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/api.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/api.func) if command -v curl >/dev/null 2>&1; then - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via curl" elif command -v wget >/dev/null 2>&1; then - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via wget" @@ -2186,7 +2186,7 @@ configure_ssh_settings() { # - Otherwise: shows update/setting menu # ------------------------------------------------------------------------------ start() { - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) if command -v pveversion >/dev/null 2>&1; then install_script || return 0 return 0 @@ -2322,9 +2322,9 @@ build_container() { TEMP_DIR=$(mktemp -d) pushd "$TEMP_DIR" >/dev/null if [ "$var_os" == "alpine" ]; then - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/alpine-install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/alpine-install.func)" else - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/install.func)" fi export DIAGNOSTICS="$DIAGNOSTICS" export RANDOM_UUID="$RANDOM_UUID" @@ -2731,44 +2731,9 @@ EOF' install_ssh_keys_into_ct # Run application installer - # NOTE: We disable error handling here because: - # 1. Container errors are caught by error_handler INSIDE container - # 2. Container creates flag file with exit code - # 3. We read flag file and handle cleanup manually below - # 4. We DON'T want host error_handler to fire for lxc-attach command itself - - set +Eeuo pipefail # Disable ALL error handling temporarily - trap - ERR # Remove ERR trap completely - - lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/install/${var_install}.sh)" - local lxc_exit=$? - - set -Eeuo pipefail # Re-enable error handling - trap 'error_handler' ERR # Restore ERR trap - - # Check for error flag file in container (more reliable than lxc-attach exit code) - local install_exit_code=0 - if [[ -n "${SESSION_ID:-}" ]]; then - local error_flag="/root/.install-${SESSION_ID}.failed" - if pct exec "$CTID" -- test -f "$error_flag" 2>/dev/null; then - install_exit_code=$(pct exec "$CTID" -- cat "$error_flag" 2>/dev/null || echo "1") - pct exec "$CTID" -- rm -f "$error_flag" 2>/dev/null || true - fi - fi - - # Fallback to lxc-attach exit code if no flag file - if [[ $install_exit_code -eq 0 && $lxc_exit -ne 0 ]]; then - install_exit_code=$lxc_exit - fi - - # Installation failed? - if [[ $install_exit_code -ne 0 ]]; then - msg_error "Installation failed in container ${CTID} (exit code: ${install_exit_code})" - - # Copy both logs from container before potential deletion - local build_log_copied=false - local install_log_copied=false - + if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/install/${var_install}.sh)"; then + local exit_code=$? + # Try to copy installation log from container before exiting if [[ -n "$CTID" && -n "${SESSION_ID:-}" ]]; then # Copy BUILD_LOG (creation log) if it exists if [[ -f "${BUILD_LOG}" ]]; then diff --git a/misc/install.func b/misc/install.func index 0b3872ff5..6860650a8 100644 --- a/misc/install.func +++ b/misc/install.func @@ -44,8 +44,8 @@ if ! command -v curl >/dev/null 2>&1; then apt-get update >/dev/null 2>&1 apt-get install -y curl >/dev/null 2>&1 fi -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors @@ -200,13 +200,13 @@ else echo -n "DIRECT" fi EOF - chmod +x /usr/local/bin/apt-proxy-detect.sh - fi - $STD apt-get update - $STD apt-get -o Dpkg::Options::="--force-confold" -y dist-upgrade - rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED - msg_ok "Updated Container OS" - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) + chmod +x /usr/local/bin/apt-proxy-detect.sh + fi + $STD apt-get update + $STD apt-get -o Dpkg::Options::="--force-confold" -y dist-upgrade + rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED + msg_ok "Updated Container OS" + source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) } # ============================================================================== @@ -279,16 +279,16 @@ customize() { ExecStart= ExecStart=-/sbin/agetty --autologin root --noclear --keep-baud tty%I 115200,38400,9600 \$TERM EOF - systemctl daemon-reload - systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') - msg_ok "Customized Container" - fi - echo "bash -c \"\$(curl -fsSL https://github.com/community-scripts/ProxmoxVED/raw/main/ct/${app}.sh)\"" >/usr/bin/update - chmod +x /usr/bin/update - if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then - mkdir -p /root/.ssh - echo "${SSH_AUTHORIZED_KEY}" >/root/.ssh/authorized_keys - chmod 700 /root/.ssh - chmod 600 /root/.ssh/authorized_keys - fi + systemctl daemon-reload + systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') + msg_ok "Customized Container" + fi + echo "bash -c \"\$(curl -fsSL https://github.com/community-scripts/ProxmoxVED/raw/main/ct/${app}.sh)\"" >/usr/bin/update + chmod +x /usr/bin/update + if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then + mkdir -p /root/.ssh + echo "${SSH_AUTHORIZED_KEY}" >/root/.ssh/authorized_keys + chmod 700 /root/.ssh + chmod 600 /root/.ssh/authorized_keys + fi } From ee824f2d54524404e961bdc547069fb085e41d72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:10:22 +0000 Subject: [PATCH 09/33] Added sync command --- install/byparr-install.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 1c3acff31..60b04848a 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,6 +17,11 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv +msg_info "Setup Byparr" +cd /opt/Byparr +$STD /usr/local/bin/uv sync +msg_ok "Setup Byparr" + msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From a7dbe05d6d1810f99bb8af37665b38ca5bffd313 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:24:31 +0000 Subject: [PATCH 10/33] removed cleanup_lxc due to error --- install/byparr-install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 60b04848a..22bbc8098 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -41,4 +41,3 @@ msg_ok "Created Service" motd_ssh customize -cleanup_lxc From 5ec4b6ff843f3409dc72cba6a22e2b5b568100d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:32:16 +0000 Subject: [PATCH 11/33] removed debugging step --- install/byparr-install.sh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 22bbc8098..ab16d97bc 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,11 +17,6 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv -msg_info "Setup Byparr" -cd /opt/Byparr -$STD /usr/local/bin/uv sync -msg_ok "Setup Byparr" - msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From 99dfd7d1d12d2732bb67c79ea38d12de01dfdcd1 Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 10:41:29 +0000 Subject: [PATCH 12/33] added chromium-common --- install/byparr-install.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index ab16d97bc..af17218b6 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -13,6 +13,10 @@ setting_up_container network_check update_os +msg_info "Installing Dependencies" +$STD apt -y install chromium-common +msg_ok "Installed Dependencies" + fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv From 5fa8d783fcb100132e9bea386f6194704fc628af Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 10:55:58 +0000 Subject: [PATCH 13/33] added libasound2 --- install/byparr-install.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index af17218b6..038b599ff 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -14,7 +14,9 @@ network_check update_os msg_info "Installing Dependencies" -$STD apt -y install chromium-common +$STD apt -y install \ + chromium-common \ + libasound2 msg_ok "Installed Dependencies" fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" From 1d9258004d9a0180901324c03a2d5f8ea4289e26 Mon Sep 17 00:00:00 2001 From: bluisholive Date: Wed, 19 Nov 2025 11:51:48 +0000 Subject: [PATCH 14/33] added dependencies --- install/byparr-install.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 038b599ff..a2c1a339a 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -15,8 +15,13 @@ update_os msg_info "Installing Dependencies" $STD apt -y install \ - chromium-common \ - libasound2 + xauth \ + xvfb \ + scrot \ + curl \ + chromium \ + chromium-driver \ + ca-certificates msg_ok "Installed Dependencies" fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" From 4af85216439453e05cf5e6fe344c90c5f6f7db39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:04:03 +0000 Subject: [PATCH 15/33] Update byparr-install.sh --- install/byparr-install.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index a2c1a339a..38aa46a4e 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -42,8 +42,10 @@ RestartSec=10 [Install] WantedBy=multi-user.target EOF -systemctl enable -q --now byparr msg_ok "Created Service" motd_ssh customize +cleanup_lxc + +systemctl enable -q --now byparr From 354932e2b3b7ca2db3dc933a67a103be455e10a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:36:30 +0000 Subject: [PATCH 16/33] Update byparr.sh --- ct/byparr.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ct/byparr.sh b/ct/byparr.sh index cbd75c2c3..e6e4927c1 100644 --- a/ct/byparr.sh +++ b/ct/byparr.sh @@ -3,7 +3,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/he # Copyright (c) 2021-2025 community-scripts ORG # Author: luismco # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://github.com/Lissy93/web-check +# Source: https://github.com/ThePhaseless/Byparr APP="Byparr" var_tags="${var_tags:-proxy}" From da81176477f367c63bca4baf7fc5593c2645fccb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:38:28 +0000 Subject: [PATCH 17/33] Update byparr-install.sh --- install/byparr-install.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 38aa46a4e..186922193 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -43,9 +43,8 @@ RestartSec=10 WantedBy=multi-user.target EOF msg_ok "Created Service" +systemctl enable -q --now byparr motd_ssh customize cleanup_lxc - -systemctl enable -q --now byparr From 68bad5b2bb04d5907acfa757d7395e3b483a33b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:49:52 +0000 Subject: [PATCH 18/33] Update byparr-install.sh --- install/byparr-install.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 186922193..38aa46a4e 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -43,8 +43,9 @@ RestartSec=10 WantedBy=multi-user.target EOF msg_ok "Created Service" -systemctl enable -q --now byparr motd_ssh customize cleanup_lxc + +systemctl enable -q --now byparr From 531a30d8abc4f9197f89125403175cc782d5a7d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:57:29 +0000 Subject: [PATCH 19/33] Create byparr.json --- frontend/public/json/byparr.json | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 frontend/public/json/byparr.json diff --git a/frontend/public/json/byparr.json b/frontend/public/json/byparr.json new file mode 100644 index 000000000..57dc848ab --- /dev/null +++ b/frontend/public/json/byparr.json @@ -0,0 +1,35 @@ +{ + "name": "Byparr", + "slug": "byparr", + "categories": [ + 14 + ], + "date_created": "2025-11-24", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": 8191, + "documentation": "https://github.com/ThePhaseless/Byparr/blob/master/README.md", + "website": "https://github.com/ThePhaseless/Byparr", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/byparr.webp", + "config_path": "", + "description": "Byparr is a proxy server to bypass Cloudflare and DDoS-GUARD protection.", + "install_methods": [ + { + "type": "default", + "script": "ct/byparr.sh", + "resources": { + "cpu": 2, + "ram": 2048, + "hdd": 4, + "os": "debian", + "version": "13" + } + } + ], + "default_credentials": { + "username": null, + "password": null + }, + "notes": [] +} From f807f399ac07a4b5c284a0df50a072bd6fd26b18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 16:58:53 +0000 Subject: [PATCH 20/33] Update byparr.sh --- ct/byparr.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ct/byparr.sh b/ct/byparr.sh index e6e4927c1..4d5bd1bd6 100644 --- a/ct/byparr.sh +++ b/ct/byparr.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: luismco # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE From 705b0b3ed245a44466c93f68bc8f966962c11eee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Mon, 24 Nov 2025 17:13:31 +0000 Subject: [PATCH 21/33] Update byparr-install.sh --- install/byparr-install.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 38aa46a4e..b9e27baea 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -33,12 +33,14 @@ cat </etc/systemd/system/byparr.service [Unit] Description=Byparr After=network.target + [Service] Type=simple WorkingDirectory=/opt/Byparr ExecStart=/usr/local/bin/uv run python3 main.py Restart=on-failure RestartSec=10 + [Install] WantedBy=multi-user.target EOF From 7a13a5c5aa3e65fe63509b25355c9d0cfeff7c37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 08:34:29 +0000 Subject: [PATCH 22/33] Added install and ct files --- ct/byparr.sh | 53 +++++++++++++++++++++++++++++++++++++++ install/byparr-install.sh | 39 ++++++++++++++++++++++++++++ misc/build.func | 24 ++++++++++++------ misc/install.func | 29 +++++++++++++++++++-- 4 files changed, 135 insertions(+), 10 deletions(-) create mode 100644 ct/byparr.sh create mode 100644 install/byparr-install.sh diff --git a/ct/byparr.sh b/ct/byparr.sh new file mode 100644 index 000000000..cbd75c2c3 --- /dev/null +++ b/ct/byparr.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/Lissy93/web-check + +APP="Byparr" +var_tags="${var_tags:-proxy}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-4}" +var_os="${var_os:-debian}" +var_version="${var_version:-13}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/Byparr ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + + if check_for_gh_release "Byparr" "ThePhaseless/Byparr"; then + msg_info "Stopping Service" + systemctl stop byparr + msg_ok "Stopped Service" + + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + + msg_info "Starting Service" + systemctl start byparr + msg_ok "Started Service" + msg_ok "Updated Successfully!" + fi + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8191${CL}" diff --git a/install/byparr-install.sh b/install/byparr-install.sh new file mode 100644 index 000000000..1c3acff31 --- /dev/null +++ b/install/byparr-install.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: luismco +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/ThePhaseless/Byparr + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + +setup_uv + +msg_info "Creating Service" +cat </etc/systemd/system/byparr.service +[Unit] +Description=Byparr +After=network.target +[Service] +Type=simple +WorkingDirectory=/opt/Byparr +ExecStart=/usr/local/bin/uv run python3 main.py +Restart=on-failure +RestartSec=10 +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now byparr +msg_ok "Created Service" + +motd_ssh +customize +cleanup_lxc diff --git a/misc/build.func b/misc/build.func index e3ef6b1f8..38a1095af 100644 --- a/misc/build.func +++ b/misc/build.func @@ -184,17 +184,17 @@ variables() { # - Initialize error traps after loading # ------------------------------------------------------------------------------ -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/api.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/api.func) if command -v curl >/dev/null 2>&1; then - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via curl" elif command -v wget >/dev/null 2>&1; then - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) - source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) + source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via wget" @@ -2279,7 +2279,7 @@ configure_ssh_settings() { # - Otherwise: shows update/setting menu # ------------------------------------------------------------------------------ start() { - source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) if command -v pveversion >/dev/null 2>&1; then install_script || return 0 return 0 @@ -2399,9 +2399,9 @@ build_container() { TEMP_DIR=$(mktemp -d) pushd "$TEMP_DIR" >/dev/null if [ "$var_os" == "alpine" ]; then - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/alpine-install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/alpine-install.func)" else - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/install.func)" fi # Core exports for install.func @@ -2816,6 +2816,7 @@ EOF' install_ssh_keys_into_ct # Run application installer +<<<<<<< HEAD # NOTE: We disable error handling here because: # 1. Container errors are caught by error_handler INSIDE container # 2. Container creates flag file with exit code @@ -2838,6 +2839,13 @@ EOF' if pct exec "$CTID" -- test -f "$error_flag" 2>/dev/null; then install_exit_code=$(pct exec "$CTID" -- cat "$error_flag" 2>/dev/null || echo "1") pct exec "$CTID" -- rm -f "$error_flag" 2>/dev/null || true +======= + if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/install/${var_install}.sh)"; then + local exit_code=$? + # Try to copy installation log from container before exiting + if [[ -n "$CTID" && -n "${SESSION_ID:-}" ]]; then + pct pull "$CTID" "/root/.install-${SESSION_ID}.log" "/tmp/install-${SESSION_ID}.log" 2>/dev/null || true +>>>>>>> 1b856490 (Added install and ct files) fi fi diff --git a/misc/install.func b/misc/install.func index 4e2869939..ffcf912ea 100644 --- a/misc/install.func +++ b/misc/install.func @@ -33,8 +33,8 @@ if ! command -v curl >/dev/null 2>&1; then apt-get update >/dev/null 2>&1 apt-get install -y curl >/dev/null 2>&1 fi -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) -source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) +source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) load_functions catch_errors @@ -183,6 +183,7 @@ else echo -n "DIRECT" fi EOF +<<<<<<< HEAD chmod +x /usr/local/bin/apt-proxy-detect.sh fi $STD apt-get update @@ -190,6 +191,15 @@ EOF rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED msg_ok "Updated Container OS" source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) +======= + chmod +x /usr/local/bin/apt-proxy-detect.sh + fi + $STD apt-get update + $STD apt-get -o Dpkg::Options::="--force-confold" -y dist-upgrade + rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED + msg_ok "Updated Container OS" + source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) +>>>>>>> 1b856490 (Added install and ct files) } # ============================================================================== @@ -264,6 +274,7 @@ customize() { ExecStart= ExecStart=-/sbin/agetty --autologin root --noclear --keep-baud tty%I 115200,38400,9600 \$TERM EOF +<<<<<<< HEAD systemctl daemon-reload systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') msg_ok "Customized Container" @@ -276,4 +287,18 @@ EOF chmod 700 /root/.ssh chmod 600 /root/.ssh/authorized_keys fi +======= + systemctl daemon-reload + systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') + msg_ok "Customized Container" + fi + echo "bash -c \"\$(curl -fsSL https://github.com/luismco/ProxmoxVED/refs/heads/byparr/ct/${app}.sh)\"" >/usr/bin/update + chmod +x /usr/bin/update + if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then + mkdir -p /root/.ssh + echo "${SSH_AUTHORIZED_KEY}" >/root/.ssh/authorized_keys + chmod 700 /root/.ssh + chmod 600 /root/.ssh/authorized_keys + fi +>>>>>>> 1b856490 (Added install and ct files) } From 734ce99aea4e33f6e2b7aa27aeca2867aec0faa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:10:22 +0000 Subject: [PATCH 23/33] Added sync command --- install/byparr-install.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 1c3acff31..60b04848a 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,6 +17,11 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv +msg_info "Setup Byparr" +cd /opt/Byparr +$STD /usr/local/bin/uv sync +msg_ok "Setup Byparr" + msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From 968392111af573174673780ed927c924c8ace759 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:24:31 +0000 Subject: [PATCH 24/33] removed cleanup_lxc due to error --- install/byparr-install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 60b04848a..22bbc8098 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -41,4 +41,3 @@ msg_ok "Created Service" motd_ssh customize -cleanup_lxc From af75968ca722feecae88e13f92235f386abcf1a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Fri, 14 Nov 2025 09:32:16 +0000 Subject: [PATCH 25/33] removed debugging step --- install/byparr-install.sh | 5 ----- 1 file changed, 5 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 22bbc8098..ab16d97bc 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -17,11 +17,6 @@ fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv -msg_info "Setup Byparr" -cd /opt/Byparr -$STD /usr/local/bin/uv sync -msg_ok "Setup Byparr" - msg_info "Creating Service" cat </etc/systemd/system/byparr.service [Unit] From 472fca909cc8b36c37200637408b8bfbe442055e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Tue, 2 Dec 2025 11:20:49 +0000 Subject: [PATCH 26/33] Update byparr.json --- frontend/public/json/byparr.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/public/json/byparr.json b/frontend/public/json/byparr.json index 57dc848ab..ee4836210 100644 --- a/frontend/public/json/byparr.json +++ b/frontend/public/json/byparr.json @@ -4,14 +4,14 @@ "categories": [ 14 ], - "date_created": "2025-11-24", + "date_created": "2025-12-02", "type": "ct", "updateable": true, "privileged": false, "interface_port": 8191, "documentation": "https://github.com/ThePhaseless/Byparr/blob/master/README.md", "website": "https://github.com/ThePhaseless/Byparr", - "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/byparr.webp", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/byparr.svg", "config_path": "", "description": "Byparr is a proxy server to bypass Cloudflare and DDoS-GUARD protection.", "install_methods": [ From 98105f0ea3dcaa2e634094ab872875c419622573 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Tue, 2 Dec 2025 11:21:34 +0000 Subject: [PATCH 27/33] Update byparr.json --- frontend/public/json/byparr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/public/json/byparr.json b/frontend/public/json/byparr.json index ee4836210..ebbc1b612 100644 --- a/frontend/public/json/byparr.json +++ b/frontend/public/json/byparr.json @@ -11,7 +11,7 @@ "interface_port": 8191, "documentation": "https://github.com/ThePhaseless/Byparr/blob/master/README.md", "website": "https://github.com/ThePhaseless/Byparr", - "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/byparr.svg", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/byparr.svg", "config_path": "", "description": "Byparr is a proxy server to bypass Cloudflare and DDoS-GUARD protection.", "install_methods": [ From b128fe431216ae75d01a02fe02c4c7d78001d009 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= Date: Tue, 2 Dec 2025 12:37:57 +0000 Subject: [PATCH 28/33] Changed build and install calls --- ct/byparr.sh | 8 -------- install/byparr-install.sh | 16 --------------- misc/build.func | 30 ++++++++-------------------- misc/install.func | 41 ++------------------------------------- 4 files changed, 10 insertions(+), 85 deletions(-) diff --git a/ct/byparr.sh b/ct/byparr.sh index 882bf8bca..4d5bd1bd6 100644 --- a/ct/byparr.sh +++ b/ct/byparr.sh @@ -1,17 +1,9 @@ #!/usr/bin/env bash -<<<<<<< HEAD -source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/build.func) -# Copyright (c) 2021-2025 community-scripts ORG -# Author: luismco -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://github.com/Lissy93/web-check -======= source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) # Copyright (c) 2021-2025 community-scripts ORG # Author: luismco # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://github.com/ThePhaseless/Byparr ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee APP="Byparr" var_tags="${var_tags:-proxy}" diff --git a/install/byparr-install.sh b/install/byparr-install.sh index 6c39886cd..b9e27baea 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -13,8 +13,6 @@ setting_up_container network_check update_os -<<<<<<< HEAD -======= msg_info "Installing Dependencies" $STD apt -y install \ xauth \ @@ -26,7 +24,6 @@ $STD apt -y install \ ca-certificates msg_ok "Installed Dependencies" ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" setup_uv @@ -36,34 +33,21 @@ cat </etc/systemd/system/byparr.service [Unit] Description=Byparr After=network.target -<<<<<<< HEAD -======= ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee [Service] Type=simple WorkingDirectory=/opt/Byparr ExecStart=/usr/local/bin/uv run python3 main.py Restart=on-failure RestartSec=10 -<<<<<<< HEAD -[Install] -WantedBy=multi-user.target -EOF -systemctl enable -q --now byparr -======= [Install] WantedBy=multi-user.target EOF ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee msg_ok "Created Service" motd_ssh customize -<<<<<<< HEAD -======= cleanup_lxc systemctl enable -q --now byparr ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee diff --git a/misc/build.func b/misc/build.func index 5de70cff8..b020ac829 100644 --- a/misc/build.func +++ b/misc/build.func @@ -184,17 +184,17 @@ variables() { # - Initialize error traps after loading # ------------------------------------------------------------------------------ -source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/api.func) +source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/api.func) if command -v curl >/dev/null 2>&1; then - source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) - source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) + source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) + source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via curl" elif command -v wget >/dev/null 2>&1; then - source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) - source <(wget -qO- https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) + source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) + source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) load_functions catch_errors #echo "(build.func) Loaded core.func via wget" @@ -2285,7 +2285,7 @@ configure_ssh_settings() { # - Otherwise: shows update/setting menu # ------------------------------------------------------------------------------ start() { - source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) + source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) if command -v pveversion >/dev/null 2>&1; then install_script || return 0 return 0 @@ -2405,9 +2405,9 @@ build_container() { TEMP_DIR=$(mktemp -d) pushd "$TEMP_DIR" >/dev/null if [ "$var_os" == "alpine" ]; then - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/alpine-install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/alpine-install.func)" else - export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/install.func)" + export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/install.func)" fi # Core exports for install.func @@ -2822,8 +2822,6 @@ EOF' install_ssh_keys_into_ct # Run application installer -<<<<<<< HEAD -<<<<<<< HEAD # NOTE: We disable error handling here because: # 1. Container errors are caught by error_handler INSIDE container # 2. Container creates flag file with exit code @@ -2846,13 +2844,6 @@ EOF' if pct exec "$CTID" -- test -f "$error_flag" 2>/dev/null; then install_exit_code=$(pct exec "$CTID" -- cat "$error_flag" 2>/dev/null || echo "1") pct exec "$CTID" -- rm -f "$error_flag" 2>/dev/null || true -======= - if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/install/${var_install}.sh)"; then - local exit_code=$? - # Try to copy installation log from container before exiting - if [[ -n "$CTID" && -n "${SESSION_ID:-}" ]]; then - pct pull "$CTID" "/root/.install-${SESSION_ID}.log" "/tmp/install-${SESSION_ID}.log" 2>/dev/null || true ->>>>>>> 1b856490 (Added install and ct files) fi fi @@ -2869,11 +2860,6 @@ EOF' local build_log_copied=false local install_log_copied=false -======= - if ! lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/install/${var_install}.sh)"; then - local exit_code=$? - # Try to copy installation log from container before exiting ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee if [[ -n "$CTID" && -n "${SESSION_ID:-}" ]]; then # Copy BUILD_LOG (creation log) if it exists if [[ -f "${BUILD_LOG}" ]]; then diff --git a/misc/install.func b/misc/install.func index 7d353a2aa..89b03fd8c 100644 --- a/misc/install.func +++ b/misc/install.func @@ -33,8 +33,8 @@ if ! command -v curl >/dev/null 2>&1; then apt-get update >/dev/null 2>&1 apt-get install -y curl >/dev/null 2>&1 fi -source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/core.func) -source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/error_handler.func) +source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func) +source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func) load_functions catch_errors @@ -191,8 +191,6 @@ else echo -n "DIRECT" fi EOF -<<<<<<< HEAD -<<<<<<< HEAD chmod +x /usr/local/bin/apt-proxy-detect.sh fi $STD apt-get update @@ -200,20 +198,6 @@ EOF rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED msg_ok "Updated Container OS" source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func) -======= -======= ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee - chmod +x /usr/local/bin/apt-proxy-detect.sh - fi - $STD apt-get update - $STD apt-get -o Dpkg::Options::="--force-confold" -y dist-upgrade - rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED - msg_ok "Updated Container OS" - source <(curl -fsSL https://raw.githubusercontent.com/luismco/ProxmoxVED/refs/heads/byparr/misc/tools.func) -<<<<<<< HEAD ->>>>>>> 1b856490 (Added install and ct files) -======= ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee } # ============================================================================== @@ -288,8 +272,6 @@ customize() { ExecStart= ExecStart=-/sbin/agetty --autologin root --noclear --keep-baud tty%I 115200,38400,9600 \$TERM EOF -<<<<<<< HEAD -<<<<<<< HEAD systemctl daemon-reload systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') msg_ok "Customized Container" @@ -302,23 +284,4 @@ EOF chmod 700 /root/.ssh chmod 600 /root/.ssh/authorized_keys fi -======= -======= ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee - systemctl daemon-reload - systemctl restart $(basename $(dirname $GETTY_OVERRIDE) | sed 's/\.d//') - msg_ok "Customized Container" - fi - echo "bash -c \"\$(curl -fsSL https://github.com/luismco/ProxmoxVED/refs/heads/byparr/ct/${app}.sh)\"" >/usr/bin/update - chmod +x /usr/bin/update - if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then - mkdir -p /root/.ssh - echo "${SSH_AUTHORIZED_KEY}" >/root/.ssh/authorized_keys - chmod 700 /root/.ssh - chmod 600 /root/.ssh/authorized_keys - fi -<<<<<<< HEAD ->>>>>>> 1b856490 (Added install and ct files) -======= ->>>>>>> 705b0b3ed245a44466c93f68bc8f966962c11eee } From 82290f7cc0a41098d6bd5ffa938e443b5b2d6415 Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:49:11 +0100 Subject: [PATCH 29/33] update: image url --- frontend/public/json/byparr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/public/json/byparr.json b/frontend/public/json/byparr.json index ebbc1b612..cbb7854bb 100644 --- a/frontend/public/json/byparr.json +++ b/frontend/public/json/byparr.json @@ -11,7 +11,7 @@ "interface_port": 8191, "documentation": "https://github.com/ThePhaseless/Byparr/blob/master/README.md", "website": "https://github.com/ThePhaseless/Byparr", - "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/byparr.svg", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@master/webp/byparr.webp", "config_path": "", "description": "Byparr is a proxy server to bypass Cloudflare and DDoS-GUARD protection.", "install_methods": [ From 7e5acbec21265da53d8b0a720bc9867cfc29901c Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:49:58 +0100 Subject: [PATCH 30/33] reorder --- install/byparr-install.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index b9e27baea..dc2c0ee14 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -44,10 +44,9 @@ RestartSec=10 [Install] WantedBy=multi-user.target EOF +systemctl enable -q --now byparr msg_ok "Created Service" motd_ssh customize cleanup_lxc - -systemctl enable -q --now byparr From 055cdfed7d4e53dd37a749370a85c1dde9d31784 Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:52:22 +0100 Subject: [PATCH 31/33] reorder --- install/byparr-install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index dc2c0ee14..d711738e3 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -25,7 +25,6 @@ $STD apt -y install \ msg_ok "Installed Dependencies" fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" - setup_uv msg_info "Creating Service" From d98f8ccc9a45c103636a1cf558819fe0c88f8394 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:13:10 +0000 Subject: [PATCH 32/33] Update byparr-install.sh --- install/byparr-install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/byparr-install.sh b/install/byparr-install.sh index d711738e3..e71bef1b0 100644 --- a/install/byparr-install.sh +++ b/install/byparr-install.sh @@ -18,7 +18,6 @@ $STD apt -y install \ xauth \ xvfb \ scrot \ - curl \ chromium \ chromium-driver \ ca-certificates From 8f362110116a12ae61f89653aed3d8e8f6b28b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Oliveira?= <48201890+luismco@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:15:46 +0000 Subject: [PATCH 33/33] Update byparr.sh --- ct/byparr.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ct/byparr.sh b/ct/byparr.sh index 4d5bd1bd6..4ebeb3a68 100644 --- a/ct/byparr.sh +++ b/ct/byparr.sh @@ -33,7 +33,7 @@ function update_script() { systemctl stop byparr msg_ok "Stopped Service" - CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" + fetch_and_deploy_gh_release "Byparr" "ThePhaseless/Byparr" msg_info "Starting Service" systemctl start byparr