Merge branch 'main' of https://github.com/community-scripts/ProxmoxVED
This commit is contained in:
commit
e3f24b369d
@ -8,10 +8,10 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/
|
||||
# Source: https://www.meilisearch.com/
|
||||
|
||||
APP="Bar-Assistant"
|
||||
var_tags="${var_tags:-network}"
|
||||
var_cpu="${var_cpu:-4}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-15}"
|
||||
var_tags="${var_tags:-inventory;drinks}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
6
ct/headers/openziti-controller
Normal file
6
ct/headers/openziti-controller
Normal file
@ -0,0 +1,6 @@
|
||||
_ __ _ __ ____
|
||||
____ ____ ___ ____ ____ (_) /_(_) _________ ____ / /__________ / / /__ _____
|
||||
/ __ \/ __ \/ _ \/ __ \/_ / / / __/ /_____/ ___/ __ \/ __ \/ __/ ___/ __ \/ / / _ \/ ___/
|
||||
/ /_/ / /_/ / __/ / / / / /_/ / /_/ /_____/ /__/ /_/ / / / / /_/ / / /_/ / / / __/ /
|
||||
\____/ .___/\___/_/ /_/ /___/_/\__/_/ \___/\____/_/ /_/\__/_/ \____/_/_/\___/_/
|
||||
/_/
|
44
ct/openziti-controller.sh
Normal file
44
ct/openziti-controller.sh
Normal file
@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: emoscardini
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/openziti/ziti
|
||||
|
||||
APP="openziti-controller"
|
||||
var_tags="network;openziti-controller"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_disk="8"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
var_unprivileged="1"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/openziti ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating $APP LXC"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
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}https://${IP}:<port>/zac${CL}"
|
39
frontend/public/json/openziti-controller.json
Normal file
39
frontend/public/json/openziti-controller.json
Normal file
@ -0,0 +1,39 @@
|
||||
{
|
||||
"name": "openziti-controller",
|
||||
"slug": "openziti-controller",
|
||||
"categories": [
|
||||
4
|
||||
],
|
||||
"date_created": "2025-03-20",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": null,
|
||||
"documentation": "https://openziti.io/docs/reference/tunnelers/docker/",
|
||||
"website": "https://www.openziti.io/",
|
||||
"logo": "https://raw.githubusercontent.com/openziti/ziti-doc/main/docusaurus/static/img/ziti-logo-dark.svg",
|
||||
"description": "OpenZiti is an open-source, zero trust networking platform that enables secure connectivity between applications, services, and devices. It provides secure, encrypted connections between clients and services, and can be used to create secure, zero trust networks.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/openziti-controller.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 1024,
|
||||
"hdd": 8,
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "The Openziti Controller installation will prompt for configuration settings during installation.",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,19 +1,124 @@
|
||||
[
|
||||
{
|
||||
"name": "TriliumNext/Notes",
|
||||
"version": "v0.92.5",
|
||||
"date": "2025-03-30T12:32:43Z"
|
||||
},
|
||||
{
|
||||
"name": "icereed/paperless-gpt",
|
||||
"version": "v0.14.2",
|
||||
"date": "2025-03-30T19:50:38Z"
|
||||
},
|
||||
{
|
||||
"name": "StarFleetCPTN/GoMFT",
|
||||
"version": "v0.2.4",
|
||||
"date": "2025-03-30T19:46:08Z"
|
||||
},
|
||||
{
|
||||
"name": "semaphoreui/semaphore",
|
||||
"version": "v2.13.3",
|
||||
"date": "2025-03-30T19:24:44Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/dockge",
|
||||
"version": "1.5.0",
|
||||
"date": "2025-03-30T17:42:59Z"
|
||||
},
|
||||
{
|
||||
"name": "pi-hole/pi-hole",
|
||||
"version": "v6.0.6",
|
||||
"date": "2025-03-30T16:59:06Z"
|
||||
},
|
||||
{
|
||||
"name": "sabnzbd/sabnzbd",
|
||||
"version": "4.5.0",
|
||||
"date": "2025-03-30T16:17:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Part-DB/Part-DB-server",
|
||||
"version": "v1.17.0",
|
||||
"date": "2025-03-30T14:21:53Z"
|
||||
},
|
||||
{
|
||||
"name": "openhab/openhab-core",
|
||||
"version": "4.3.4",
|
||||
"date": "2025-03-30T13:32:38Z"
|
||||
},
|
||||
{
|
||||
"name": "pocketbase/pocketbase",
|
||||
"version": "v0.26.6",
|
||||
"date": "2025-03-30T08:02:19Z"
|
||||
},
|
||||
{
|
||||
"name": "Prowlarr/Prowlarr",
|
||||
"version": "v1.32.2.4987",
|
||||
"date": "2025-03-16T09:41:37Z"
|
||||
},
|
||||
{
|
||||
"name": "Readarr/Readarr",
|
||||
"version": "v2.0.0.4645",
|
||||
"date": "2017-03-07T18:56:06Z"
|
||||
},
|
||||
{
|
||||
"name": "Lidarr/Lidarr",
|
||||
"version": "v2.10.3.4602",
|
||||
"date": "2025-03-23T11:00:37Z"
|
||||
},
|
||||
{
|
||||
"name": "Radarr/Radarr",
|
||||
"version": "v5.21.1.9799",
|
||||
"date": "2025-03-24T15:52:12Z"
|
||||
},
|
||||
{
|
||||
"name": "aceberg/WatchYourLAN",
|
||||
"version": "2.1.2-alpine",
|
||||
"date": "2025-03-30T06:25:22Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.22.1709",
|
||||
"date": "2025-03-30T05:51:21Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v0.45.0",
|
||||
"date": "2025-03-29T23:12:22Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.1.4",
|
||||
"date": "2025-03-13T15:41:42Z"
|
||||
},
|
||||
{
|
||||
"name": "glanceapp/glance",
|
||||
"version": "v0.7.9",
|
||||
"date": "2025-03-29T18:08:11Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.3.4",
|
||||
"date": "2025-03-21T20:22:46Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v11.8.4",
|
||||
"date": "2025-03-29T08:28:12Z"
|
||||
"date": "2025-03-29T13:37:15Z"
|
||||
},
|
||||
{
|
||||
"name": "runtipi/runtipi",
|
||||
"version": "nightly",
|
||||
"date": "2025-03-29T12:57:40Z"
|
||||
},
|
||||
{
|
||||
"name": "syncthing/syncthing",
|
||||
"version": "v2.0.0-beta.1",
|
||||
"date": "2025-03-29T12:53:28Z"
|
||||
},
|
||||
{
|
||||
"name": "tobychui/zoraxy",
|
||||
"version": "v3.1.9",
|
||||
"date": "2025-03-01T02:24:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.22.1705",
|
||||
"date": "2025-03-29T05:54:06Z"
|
||||
},
|
||||
{
|
||||
"name": "inspircd/inspircd",
|
||||
"version": "v4.7.0",
|
||||
@ -49,11 +154,6 @@
|
||||
"version": "v4.2.3",
|
||||
"date": "2025-02-09T23:07:48Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.3.4",
|
||||
"date": "2025-03-21T20:22:46Z"
|
||||
},
|
||||
{
|
||||
"name": "gristlabs/grist-core",
|
||||
"version": "v1.5.0",
|
||||
@ -69,16 +169,6 @@
|
||||
"version": "v5.6.1",
|
||||
"date": "2025-03-28T18:40:22Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.1.4",
|
||||
"date": "2025-03-13T15:41:42Z"
|
||||
},
|
||||
{
|
||||
"name": "pocketbase/pocketbase",
|
||||
"version": "v0.26.5",
|
||||
"date": "2025-03-28T17:41:23Z"
|
||||
},
|
||||
{
|
||||
"name": "NodeBB/NodeBB",
|
||||
"version": "v4.2.0",
|
||||
@ -129,11 +219,6 @@
|
||||
"version": "v1.10.0-rc.3",
|
||||
"date": "2025-03-28T03:45:54Z"
|
||||
},
|
||||
{
|
||||
"name": "StarFleetCPTN/GoMFT",
|
||||
"version": "v.0.2.3",
|
||||
"date": "2025-03-27T23:54:49Z"
|
||||
},
|
||||
{
|
||||
"name": "Bubka/2FAuth",
|
||||
"version": "v5.5.0",
|
||||
@ -149,11 +234,6 @@
|
||||
"version": "2025.2",
|
||||
"date": "2025-03-27T19:21:13Z"
|
||||
},
|
||||
{
|
||||
"name": "TriliumNext/Notes",
|
||||
"version": "v0.92.4",
|
||||
"date": "2025-03-17T16:00:19Z"
|
||||
},
|
||||
{
|
||||
"name": "fallenbagel/jellyseerr",
|
||||
"version": "preview-music-support",
|
||||
@ -189,11 +269,6 @@
|
||||
"version": "7.2.5",
|
||||
"date": "2025-03-27T11:06:48Z"
|
||||
},
|
||||
{
|
||||
"name": "syncthing/syncthing",
|
||||
"version": "v1.29.3",
|
||||
"date": "2025-03-12T11:56:30Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.202.1",
|
||||
@ -229,21 +304,6 @@
|
||||
"version": "v0.6.3-rc1",
|
||||
"date": "2025-03-26T20:39:01Z"
|
||||
},
|
||||
{
|
||||
"name": "runtipi/runtipi",
|
||||
"version": "v3.10.0",
|
||||
"date": "2025-03-15T14:38:16Z"
|
||||
},
|
||||
{
|
||||
"name": "glanceapp/glance",
|
||||
"version": "v0.7.8",
|
||||
"date": "2025-03-26T19:59:07Z"
|
||||
},
|
||||
{
|
||||
"name": "semaphoreui/semaphore",
|
||||
"version": "v2.13.2",
|
||||
"date": "2025-03-26T19:13:48Z"
|
||||
},
|
||||
{
|
||||
"name": "dgtlmoon/changedetection.io",
|
||||
"version": "0.49.9",
|
||||
@ -294,16 +354,6 @@
|
||||
"version": "v0.34.1",
|
||||
"date": "2025-03-25T18:11:12Z"
|
||||
},
|
||||
{
|
||||
"name": "aceberg/WatchYourLAN",
|
||||
"version": "2.1.1",
|
||||
"date": "2025-03-25T17:21:41Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v0.44.0",
|
||||
"date": "2025-03-25T16:09:10Z"
|
||||
},
|
||||
{
|
||||
"name": "dotnetfactory/fluid-calendar",
|
||||
"version": "v1.3.0",
|
||||
@ -324,11 +374,6 @@
|
||||
"version": "v1.6.8",
|
||||
"date": "2025-03-25T13:33:10Z"
|
||||
},
|
||||
{
|
||||
"name": "icereed/paperless-gpt",
|
||||
"version": "v0.14.1",
|
||||
"date": "2025-03-25T10:09:14Z"
|
||||
},
|
||||
{
|
||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||
"version": "pmm-6401-v1.114.0",
|
||||
@ -364,11 +409,6 @@
|
||||
"version": "v0.9.0",
|
||||
"date": "2025-03-24T18:25:37Z"
|
||||
},
|
||||
{
|
||||
"name": "Radarr/Radarr",
|
||||
"version": "v5.21.1.9799",
|
||||
"date": "2025-03-24T15:52:12Z"
|
||||
},
|
||||
{
|
||||
"name": "Graylog2/graylog2-server",
|
||||
"version": "6.2.0-beta.2",
|
||||
@ -399,21 +439,11 @@
|
||||
"version": "v1.17.0",
|
||||
"date": "2025-03-24T00:46:32Z"
|
||||
},
|
||||
{
|
||||
"name": "Lidarr/Lidarr",
|
||||
"version": "v2.10.3.4602",
|
||||
"date": "2025-03-23T11:00:37Z"
|
||||
},
|
||||
{
|
||||
"name": "nicolargo/glances",
|
||||
"version": "v4.3.1",
|
||||
"date": "2025-03-23T09:02:54Z"
|
||||
},
|
||||
{
|
||||
"name": "Prowlarr/Prowlarr",
|
||||
"version": "v1.32.2.4987",
|
||||
"date": "2025-03-16T09:41:37Z"
|
||||
},
|
||||
{
|
||||
"name": "usememos/memos",
|
||||
"version": "v0.24.2",
|
||||
@ -429,11 +459,6 @@
|
||||
"version": "v4.2.6",
|
||||
"date": "2025-03-21T21:20:29Z"
|
||||
},
|
||||
{
|
||||
"name": "sabnzbd/sabnzbd",
|
||||
"version": "4.4.1",
|
||||
"date": "2024-12-20T13:21:31Z"
|
||||
},
|
||||
{
|
||||
"name": "leiweibau/Pi.Alert",
|
||||
"version": "v2025-03-21",
|
||||
@ -659,11 +684,6 @@
|
||||
"version": "v21.0.0.0",
|
||||
"date": "2025-03-09T12:25:44Z"
|
||||
},
|
||||
{
|
||||
"name": "Readarr/Readarr",
|
||||
"version": "v2.0.0.4645",
|
||||
"date": "2017-03-07T18:56:06Z"
|
||||
},
|
||||
{
|
||||
"name": "YuukanOO/seelf",
|
||||
"version": "v2.4.2",
|
||||
@ -724,11 +744,6 @@
|
||||
"version": "10.1.39",
|
||||
"date": "2025-03-04T19:05:18Z"
|
||||
},
|
||||
{
|
||||
"name": "pi-hole/pi-hole",
|
||||
"version": "v6.0.5",
|
||||
"date": "2025-03-04T17:28:41Z"
|
||||
},
|
||||
{
|
||||
"name": "sysadminsmedia/homebox",
|
||||
"version": "v0.18.0",
|
||||
@ -764,11 +779,6 @@
|
||||
"version": "v6.11.2",
|
||||
"date": "2025-02-26T14:54:49Z"
|
||||
},
|
||||
{
|
||||
"name": "Part-DB/Part-DB-server",
|
||||
"version": "v1.16.1",
|
||||
"date": "2025-02-26T11:29:15Z"
|
||||
},
|
||||
{
|
||||
"name": "silverbulletmd/silverbullet",
|
||||
"version": "0.10.4",
|
||||
@ -814,11 +824,6 @@
|
||||
"version": "5.6.1",
|
||||
"date": "2025-02-23T20:39:48Z"
|
||||
},
|
||||
{
|
||||
"name": "openhab/openhab-core",
|
||||
"version": "5.0.0.M1",
|
||||
"date": "2025-02-23T14:55:36Z"
|
||||
},
|
||||
{
|
||||
"name": "outline/outline",
|
||||
"version": "v0.82.1-15",
|
||||
@ -1184,11 +1189,6 @@
|
||||
"version": "v4.4.3",
|
||||
"date": "2024-04-06T12:24:35Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/dockge",
|
||||
"version": "1.4.2",
|
||||
"date": "2024-01-21T17:02:52Z"
|
||||
},
|
||||
{
|
||||
"name": "hyperion-project/hyperion.ng",
|
||||
"version": "2.0.16",
|
||||
|
@ -24,6 +24,20 @@ $STD apt-get install -y \
|
||||
nginx
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Adding PHP8.3 Repository"
|
||||
$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
|
||||
$STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
|
||||
$STD apt-get update
|
||||
msg_ok "Added PHP8.3 Repository"
|
||||
|
||||
msg_info "Installing PHP"
|
||||
$STD apt-get remove -y php8.2*
|
||||
$STD apt-get install -y \
|
||||
php8.3 \
|
||||
php8.3-{ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm}
|
||||
msg_info "Installed PHP"
|
||||
|
||||
msg_info "Installing MeiliSearch"
|
||||
cd /opt
|
||||
RELEASE_MEILISEARCH=$(curl -s https://api.github.com/repos/meilisearch/meilisearch/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
|
60
install/openziti-controller-install.sh
Normal file
60
install/openziti-controller-install.sh
Normal file
@ -0,0 +1,60 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: emoscardini
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/openziti/ziti
|
||||
|
||||
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 gpg
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Installing openziti"
|
||||
mkdir -p --mode=0755 /usr/share/keyrings
|
||||
curl -sSLf https://get.openziti.io/tun/package-repos.gpg | gpg --dearmor -o /usr/share/keyrings/openziti.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/openziti.gpg] https://packages.openziti.org/zitipax-openziti-deb-stable debian main" >/etc/apt/sources.list.d/openziti.list
|
||||
$STD apt-get update
|
||||
$STD apt-get install -y openziti-controller openziti-console
|
||||
msg_ok "Installed openziti"
|
||||
|
||||
read -r -p "Would you like to go through the auto configuration now? <y/N>" prompt
|
||||
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
||||
IPADDRESS=$(hostname -I | awk '{print $1}')
|
||||
GEN_FQDN="controller.${IPADDRESS}.sslip.io"
|
||||
read -r -p "Please enter the controller FQDN [${GEN_FQDN}]: " ZITI_CTRL_ADVERTISED_ADDRESS
|
||||
ZITI_CTRL_ADVERTISED_ADDRESS=${ZITI_CTRL_ADVERTISED_ADDRESS:-$GEN_FQDN}
|
||||
read -r -p "Please enter the controller port [1280]: " ZITI_CTRL_ADVERTISED_PORT
|
||||
ZITI_CTRL_ADVERTISED_PORT=${ZITI_CTRL_ADVERTISED_PORT:-1280}
|
||||
read -r -p "Please enter the controller admin user [admin]: " ZITI_USER
|
||||
ZITI_USER=${ZITI_USER:-admin}
|
||||
GEN_PWD=$(head -c128 /dev/urandom | LC_ALL=C tr -dc 'A-Za-z0-9!@#$%^*_+~' | cut -c 1-12)
|
||||
read -r -p "Please enter the controller admin password [${GEN_PWD}]:" ZITI_PWD
|
||||
ZITI_PWD=${ZITI_PWD:-$GEN_PWD}
|
||||
CONFIG_FILE="/opt/openziti/etc/controller/bootstrap.env"
|
||||
sed -i "s|^ZITI_CTRL_ADVERTISED_ADDRESS=.*|ZITI_CTRL_ADVERTISED_ADDRESS='${ZITI_CTRL_ADVERTISED_ADDRESS}'|" "$CONFIG_FILE"
|
||||
sed -i "s|^ZITI_CTRL_ADVERTISED_PORT=.*|ZITI_CTRL_ADVERTISED_PORT='${ZITI_CTRL_ADVERTISED_PORT}'|" "$CONFIG_FILE"
|
||||
sed -i "s|^ZITI_USER=.*|ZITI_USER='${ZITI_USER}'|" "$CONFIG_FILE"
|
||||
sed -i "s|^ZITI_PWD=.*|ZITI_PWD='${ZITI_PWD}'|" "$CONFIG_FILE"
|
||||
env VERBOSE=0 bash /opt/openziti/etc/controller/bootstrap.bash
|
||||
msg_ok "Configuration Completed"
|
||||
systemctl enable -q --now ziti-controller
|
||||
else
|
||||
systemctl enable -q ziti-controller
|
||||
msg_error "Configration not provided; Please run /opt/openziti/etc/controller/bootstrap.bash to configure the controller and restart the container"
|
||||
fi
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
|
||||
msg_info "Cleaning up"
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleaned"
|
Loading…
x
Reference in New Issue
Block a user