Port PBS to ARM64

fix changedetection font package issue as well
This commit is contained in:
Sam Heinz
2024-04-11 17:06:43 +10:00
parent ca3d486109
commit 50f2744ef4
4 changed files with 168 additions and 170 deletions

201
README.md
View File

@@ -25,112 +25,107 @@ You can get a script from this by using the original website, and modifying the
Any applications not in ported or unsupported need to be tested for whether they could be ported or not.
<details>
<summary>Currently ported applications</summary>
<b><big>Status Guide:</big></b><br>
<b>Tested using the application: </b>✅<br>
<b>Tested creating the container: </b>☑️<br>
<b>View notes: </b>🔘<br>
<b>Untested: </b> ⭕
<li>☑️ ActualBudget</li>
<li>☑️ Adguard</li>
<li>☑️ AgentDVR</li>
<li>☑️ Apache Cassandra</li>
<li>☑️ Alpine Docker</li>
<li>⭕ Alpine Grafana</li>
<li>⭕ Alpine</li>
<li>⭕ Alpine Nextcloud</li>
<li>⭕ Alpine Vaultwarden</li>
<li>⭕ Alpine Zigbee2mqtt</li>
<li>⭕ Apache CouchDB</li>
<li>⭕ APT Cacher NG</li>
<li>⭕ Audiobookshelf</li>
<li>☑️ Autobrr</li>
<li>⭕ Bazarr</li>
<li>⭕ Blocky</li>
<li>⭕ CasaOS</li>
<li>☑️🔘 ChangeDetection</li>
<li>⭕ Channels</li>
<li>⭕ Cloudflared</li>
<li>⭕ Commafeed</li>
<li>⭕ Cronicle</li>
<li>⭕ Dashy</li>
<li>⭕ deConz</li>
<li>⭕ Deluge</li>
<li>☑️ Docker</li>
<li>⭕ Dockage</li>
<li>⭕ Emby</li>
<li>⭕ EMQX</li>
<li>⭕ ESPHome</li>
<li>⭕ Fhem</li>
<li>⭕ FlowiseAI</li>
<li>⭕ Frigate</li>
<li>⭕ Go2RTC</li>
<li>⭕ Gokapi</li>
<li>⭕ Gotify</li>
<li>⭕ Grafana</li>
<li>⭕ Grocy</li>
<li>⭕ Heimdall</li>
<li>⭕ HiveMQ</li>
<li>⭕ Homarr</li>
<li>⭕ HomeAssistant Core</li>
<li>⭕ HomeAssistant</li>
<li>⭕ Homebridge</li>
<li>⭕ Homepage</li>
<li>⭕ Homer</li>
<li>⭕ Hyperhdr</li>
<li>⭕ Hyperion</li>
<li>⭕ InfluxDB</li>
<li>⭕ ioBroker</li>
<li>⭕ Jackett</li>
<li>⭕ Jellyfin</li>
<li>⭕ Jellyseerr</li>
<li>⭕ k0s</li>
<li>⭕ Kavita</li>
<li>⭕ Keycloak</li>
<li>⭕ LazyLibrarian</li>
<li>⭕ Lidarr</li>
<li>⭕ Linkwarden</li>
<li>⭕ Mafl</li>
<li>⭕ MagicMirror</li>
<li>⭕ MariaDB</li>
<li>⭕ MediaMTX</li>
<li>⭕ Medusa</li>
<li>⭕ MeshCentral</li>
<li>⭕ Motioneye</li>
<li>⭕ MQTT</li>
<li>⭕ n8n</li>
<li>⭕ Navidrome</li>
<li>⭕ NextCloudPi</li>
<li>⭕ Nginx Proxy Manager</li>
<li>⭕ NocoDB</li>
<li>⭕ Node-Red</li>
<li>⭕ ntfy</li>
<li>⭕ OctoPrint</li>
<li>⭕ Omada</li>
<li>⭕ Ombi</li>
<li>⭕ OMV</li>
<li>⭕ openHAB</li>
<li>⭕ OpenObserve</li>
<li>⭕ Overseerr</li>
<li>⭕ Owncast</li>
<li>⭕ Prowlarr</li>
<li>✅ Radarr</li>
<li>✅ Sonarr</li>
</details>
## Compatibility Guide
| Icon | Description |
|---|---|
| ✅ | The install script has been tested with creating a container and using the application. |
| ☑️ | The install script has been tested to the extent of creating a container. |
| ⭕ | Install script is ported, but has not been tested. |
| ❌ | Unsupported. View *Unsupported Applications* at the bottom |
| 🔘 | Install script not ported to ARM64. |
<details>
<summary>App Notes</summary>
<li>ChangeDetection - in my testing I had a font package require manual input for the accepting of a EULA, make sure to enable verbose (changed to be enabled in the default config) to be able to accept it.</li>
</details>
<details>
<summary>No changes required</summary>
<li>Tailscale</li>
</details>
| App | Status | Notes |
|---|---|---|
| ActualBudget | ☑️ | - |
| Adguard | ☑️ | - |
| AgentDVR | ☑️ | - |
| Apache Cassandra | ☑️ | - |
| Alpine Docker | ☑️ | - |
| Alpine Grafana | ⭕ | - |
| Alpine | ⭕ | - |
| Alpine Nextcloud | ⭕ | - |
| Alpine Vaultwarden | ⭕ | - |
| Alpine Zigbee2mqtt | ⭕ | - |
| Apache CouchDB | ⭕ | - |
| APT Cacher NG | ⭕ | - |
| Audiobookshelf | ⭕ | - |
| Autobrr | ☑️ | - |
| Bazarr | ⭕ | - |
| Blocky | ⭕ | - |
| CasaOS | ⭕ | - |
| ChangeDetection | ☑️ | In my testing I had a font package require manual input for the accepting of a EULA, make sure to enable verbose (changed to be enabled in the default config) to be able to accept it. |
| Channels | ⭕ | - |
| Cloudflared | ⭕ | - |
| Commafeed | ⭕ | - |
| Cronicle | ⭕ | - |
| Dashy | ⭕ | - |
| deConz | ⭕ | - |
| DaemonSync | ❌ | - |
| Deluge | ⭕ | - |
| Docker | ☑️ | - |
| Dockage | ⭕ | - |
| Emby | ⭕ | - |
| EMQX | ⭕ | - |
| ESPHome | ⭕ | - |
| Fhem | ⭕ | - |
| FlowiseAI | ⭕ | - |
| Frigate | ⭕ | - |
| Go2RTC | ⭕ | - |
| Gokapi | ⭕ | - |
| Gotify | ⭕ | - |
| Grafana | ⭕ | - |
| Grocy | ⭕ | - |
| Heimdall | ⭕ | - |
| HiveMQ | ⭕ | - |
| Homarr | ⭕ | - |
| HomeAssistant Core | ⭕ | - |
| HomeAssistant | ⭕ | - |
| Homebridge | ⭕ | - |
| Homepage | ⭕ | - |
| Homer | ⭕ | - |
| Hyperhdr | ⭕ | - |
| Hyperion | ⭕ | - |
| InfluxDB | ⭕ | - |
| ioBroker | ⭕ | - |
| Jackett | ⭕ | - |
| Jellyfin | ⭕ | - |
| Jellyseerr | ⭕ | - |
| k0s | ⭕ | - |
| Kavita | ⭕ | - |
| Keycloak | ⭕ | - |
| LazyLibrarian | ⭕ | - |
| Lidarr | ⭕ | - |
| Linkwarden | ⭕ | - |
| Mafl | ⭕ | - |
| MagicMirror | ⭕ | - |
| MariaDB | ⭕ | - |
| MediaMTX | ⭕ | - |
| Medusa | ⭕ | - |
| MeshCentral | ⭕ | - |
| Motioneye | ⭕ | - |
| MQTT | ⭕ | - |
| n8n | ⭕ | - |
| Navidrome | ⭕ | - |
| NextCloudPi | ⭕ | - |
| Nginx Proxy Manager | ⭕ | - |
| NocoDB | ⭕ | - |
| Node-Red | ⭕ | - |
| ntfy | ⭕ | - |
| OctoPrint | ⭕ | - |
| Omada | ⭕ | - |
| Ombi | ⭕ | - |
| OMV | ⭕ | - |
| openHAB | ⭕ | - |
| OpenObserve | ⭕ | - |
| Overseerr | ⭕ | - |
| Owncast | ⭕ | - |
| PBS | ☑️ | Proxmox Backup Server |
| Prowlarr | ⭕ | - |
| Radarr | ✅ | - |
| Sonarr | ✅ | - |
| Tailscale | ✅ | No changes required |
<details>
<summary>Unsupported applications</summary>
<li>Proxmox Backup Server - Needs custom image</li>
<li>DaemonSync - built for amd64 only</li>
</details>

123
ct/pbs.sh
View File

@@ -1,73 +1,72 @@
#!/usr/bin/env bash
# source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
source <(curl -s https://raw.githubusercontent.com/asylumexp/Proxmox/main/misc/build.func)
# Copyright (c) 2021-2024 tteck
# Author: tteck (tteckster)
# License: MIT
# https://github.com/tteck/Proxmox/raw/main/LICENSE
echo "Currently unsupported."
# function header_info {
# clear
# cat <<"EOF"
# ____ ____ __ _____
# / __ \_________ _ ______ ___ ____ _ __ / __ )____ ______/ /____ ______ / ___/___ ______ _____ _____
# / /_/ / ___/ __ \| |/_/ __ `__ \/ __ \| |/_/ / __ / __ `/ ___/ //_/ / / / __ \ \__ \/ _ \/ ___/ | / / _ \/ ___/
# / ____/ / / /_/ /> </ / / / / / /_/ /> < / /_/ / /_/ / /__/ ,< / /_/ / /_/ / ___/ / __/ / | |/ / __/ /
# /_/ /_/ \____/_/|_/_/ /_/ /_/\____/_/|_| /_____/\__,_/\___/_/|_|\__,_/ .___/ /____/\___/_/ |___/\___/_/
# /_/
# EOF
# }
# header_info
# echo -e "Loading..."
# APP="PBS"
# var_disk="10"
# var_cpu="2"
# var_ram="2048"
# var_os="debian"
# var_version="12"
# variables
# color
# catch_errors
function header_info {
clear
cat <<"EOF"
____ ____ __ _____
/ __ \_________ _ ______ ___ ____ _ __ / __ )____ ______/ /____ ______ / ___/___ ______ _____ _____
/ /_/ / ___/ __ \| |/_/ __ `__ \/ __ \| |/_/ / __ / __ `/ ___/ //_/ / / / __ \ \__ \/ _ \/ ___/ | / / _ \/ ___/
/ ____/ / / /_/ /> </ / / / / / /_/ /> < / /_/ / /_/ / /__/ ,< / /_/ / /_/ / ___/ / __/ / | |/ / __/ /
/_/ /_/ \____/_/|_/_/ /_/ /_/\____/_/|_| /_____/\__,_/\___/_/|_|\__,_/ .___/ /____/\___/_/ |___/\___/_/
/_/
EOF
}
header_info
echo -e "Loading..."
APP="PBS"
var_disk="10"
var_cpu="2"
var_ram="2048"
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 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 [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
# msg_info "Updating $APP LXC"
# apt-get update &>/dev/null
# apt-get -y upgrade &>/dev/null
# msg_ok "Updated $APP LXC"
# exit
# }
function update_script() {
header_info
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
msg_info "Updating $APP LXC"
apt-get update &>/dev/null
apt-get -y upgrade &>/dev/null
msg_ok "Updated $APP LXC"
exit
}
# start
# build_container
# description
start
build_container
description
# msg_ok "Completed Successfully!\n"
# echo -e "${APP} should be reachable by going to the following URL.
# ${BL}http://${IP}:8007${CL} \n"
msg_ok "Completed Successfully!\n"
echo -e "${APP} should be reachable by going to the following URL.
${BL}http://${IP}:8007${CL} \n"

View File

@@ -81,6 +81,7 @@ $STD npm prune production --prefix /opt/browserless
msg_ok "Installed Browserless & Playwright"
msg_info "Installing Font Packages"
export DEBIAN_FRONTEND=noninteractive
$STD apt-get install -y \
fontconfig \
libfontconfig1 \

View File

@@ -17,15 +17,18 @@ 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 git
$STD apt-get install -y wget
$STD apt-get install -y dpkg-dev
msg_ok "Installed Dependencies"
msg_info "Installing Proxmox Backup Server"
wget -q https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
cat <<EOF >>/etc/apt/sources.list
deb http://download.proxmox.com/debian/pbs bookworm pbs-no-subscription
EOF
$STD apt-get update
$STD apt-get install -y proxmox-backup-server
export DEBIAN_FRONTEND=noninteractive
git clone https://github.com/wofferl/proxmox-backup-arm64
cd ./proxmox-backup-arm64
./build.sh download
apt install -y -f ./packages/*
msg_ok "Installed Proxmox Backup Server"
motd_ssh