\
- -p 80:80 \
- organizrtools/organizr-v2
-```
-
-##### Parameters
-
-The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side. For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container. So `-p 8080:80` would expose port 80 from inside the container to be accessible from the host's IP on port 8080 and `http://192.168.x.x:8080` would show you what's running INSIDE the container on port 80.
-
-- `-p 80` - The port(s)
-- `-v /config` - Mapping the config files for Organizr
-- `-e PGID` Used for GroupID - see below for explanation
-- `-e PUID` Used for UserID - see below for explanation
-
-##### Info
-
-- Shell access whilst the container is running: `docker exec -it organizr /bin/bash`
-- To monitor the logs of the container in realtime: `docker logs -f organizr`
-- Container version number: `docker inspect -f '{{ index .Config.Labels "build_version" }}' organizr`
-- Image version number: `docker inspect -f '{{ index .Config.Labels "build_version" }}' organizrtools/docker-organizr-v2`
-
-
-
-
-BrowserStack for allowing us to use their platform for testing
-This project is supported by:
-
-
-
-
-
diff --git a/archive/jailman/blueprints/organizr/update.sh b/archive/jailman/blueprints/organizr/update.sh
deleted file mode 100755
index 37f794926e3..00000000000
--- a/archive/jailman/blueprints/organizr/update.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for Organizr
-
-iocage exec "$1" service nginx stop
-iocage exec "$1" service php-fpm stop
-# TODO setup cli update for Organizr here.
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/organizr/includes/nginx.conf /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/nginx/nginx.conf
-iocage exec "$1" "cd /usr/local/www/Organizr && git pull"
-iocage exec "$1" chown -R www:www /usr/local/www /config /usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/custom
-iocage exec "$1" service nginx start
-iocage exec "$1" service php-fpm start
diff --git a/archive/jailman/blueprints/plex/config.yml b/archive/jailman/blueprints/plex/config.yml
deleted file mode 100644
index 3249b98a995..00000000000
--- a/archive/jailman/blueprints/plex/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- plex:
- pkgs: plexmediaserver
diff --git a/archive/jailman/blueprints/plex/includes/FreeBSD.conf b/archive/jailman/blueprints/plex/includes/FreeBSD.conf
deleted file mode 100644
index aac0d24822d..00000000000
--- a/archive/jailman/blueprints/plex/includes/FreeBSD.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-FreeBSD: {
- url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest"
-}
diff --git a/archive/jailman/blueprints/plex/install.sh b/archive/jailman/blueprints/plex/install.sh
deleted file mode 100755
index ecd62b096b8..00000000000
--- a/archive/jailman/blueprints/plex/install.sh
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for plex
-
-iocage exec plex mkdir -p /usr/local/etc/pkg/repos
-
-# Change to to more frequent FreeBSD repo to stay up-to-date with plex more.
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/plex/includes/FreeBSD.conf /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/pkg/repos/FreeBSD.conf
-
-
-# Check if datasets for media librarys exist, create them if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_media}" /mnt/media
-createmount "$1" "${global_dataset_media}"/movies /mnt/media/movies
-createmount "$1" "${global_dataset_media}"/music /mnt/media/music
-createmount "$1" "${global_dataset_media}"/shows /mnt/media/shows
-
-# Create plex ramdisk if specified
-# shellcheck disable=SC2154
-if [ -z "${plex_ramdisk}" ]; then
- echo "no ramdisk specified for plex, continuing without ramdisk"
-else
- iocage fstab -a "$1" tmpfs /tmp_transcode tmpfs rw,size="${plex_ramdisk}",mode=1777 0 0
-fi
-
-iocage exec "$1" chown -R plex:plex /config
-
-# Force update pkg to get latest plex version
-iocage exec "$1" pkg update
-iocage exec "$1" pkg upgrade -y
-
-# Add plex user to video group for future hw-encoding support
-iocage exec "$1" pw groupmod -n video -m plex
-
-# Run different install procedures depending on Plex vs Plex Beta
-# shellcheck disable=SC2154
-if [ "$plex_beta" == "true" ]; then
- echo "beta enabled in config.yml... using plex beta for install"
- iocage exec "$1" sysrc "plexmediaserver_plexpass_enable=YES"
- iocage exec "$1" sysrc plexmediaserver_plexpass_support_path="/config"
- iocage exec "$1" chown -R plex:plex /usr/local/share/plexmediaserver-plexpass/
- iocage exec "$1" service plexmediaserver_plexpass restart
-else
- echo "beta disabled in config.yml... NOT using plex beta for install"
- iocage exec "$1" sysrc "plexmediaserver_enable=YES"
- iocage exec "$1" sysrc plexmediaserver_support_path="/config"
- iocage exec "$1" chown -R plex:plex /usr/local/share/plexmediaserver/
- iocage exec "$1" service plexmediaserver restart
-fi
-
-echo "Finished installing plex"
diff --git a/archive/jailman/blueprints/plex/readme.md b/archive/jailman/blueprints/plex/readme.md
deleted file mode 100644
index b35e8c38da7..00000000000
--- a/archive/jailman/blueprints/plex/readme.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Plex
-
-### Config Parameters:
-
-- beta: set to `true` if you want to run the plex beta (previously known as "plexpass"). Please note: This is not required for plexpass features
-
-For more information about plex, please see the Plex website:
-
-### Config Parameters:
-
-- ramdisk: Specify the `size` parameter to create a transcoding ramdisk under /tmp_transcode. Requires manual setting it un plex to be used for transcoding. (optional)
-
-# Original plex install script guide
-
-https://www.ixsystems.com/community/resources/fn11-3-iocage-jails-plex-tautulli-sonarr-radarr-lidarr-jackett-transmission-organizr.58/
diff --git a/archive/jailman/blueprints/plex/update.sh b/archive/jailman/blueprints/plex/update.sh
deleted file mode 100755
index f159dabeae4..00000000000
--- a/archive/jailman/blueprints/plex/update.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for Plex
-
-# Run different update procedures depending on Plex vs Plex Beta
-# shellcheck disable=SC2154
-if [ "$plex_plexpass" == "true" ]; then
- echo "beta enabled in config.yml... using plex beta for update..."
- iocage exec "$1" service plexmediaserver_plexpass stop
- # Plex is updated using PKG already, this is mostly a placeholder
- iocage exec "$1" chown -R plex:plex /usr/local/share/plexmediaserver-plexpass/
- iocage exec "$1" service plexmediaserver_plexpass restart
-else
- echo "beta disabled in config.yml... NOT using plex beta for update..."
- iocage exec "$1" service plexmediaserver stop
- # Plex is updated using PKG already, this is mostly a placeholder
- iocage exec "$1" chown -R plex:plex /usr/local/share/plexmediaserver/
- iocage exec "$1" service plexmediaserver restart
-fi
diff --git a/archive/jailman/blueprints/radarr/config.yml b/archive/jailman/blueprints/radarr/config.yml
deleted file mode 100644
index 2f82f8539ca..00000000000
--- a/archive/jailman/blueprints/radarr/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- radarr:
- pkgs: mono mediainfo sqlite3 libgdiplus
diff --git a/archive/jailman/blueprints/radarr/includes/radarr.rc b/archive/jailman/blueprints/radarr/includes/radarr.rc
deleted file mode 100644
index af6d7bd150a..00000000000
--- a/archive/jailman/blueprints/radarr/includes/radarr.rc
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-
-# $FreeBSD$
-#
-# PROVIDE: radarr
-# REQUIRE: LOGIN
-# KEYWORD: shutdown
-#
-# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
-# to enable this service:
-#
-# radarr_enable: Set to YES to enable radarr
-# Default: NO
-# radarr_user: The user account used to run the radarr daemon.
-# This is optional, however do not specifically set this to an
-# empty string as this will cause the daemon to run as root.
-# Default: media
-# radarr_group: The group account used to run the radarr daemon.
-# This is optional, however do not specifically set this to an
-# empty string as this will cause the daemon to run with group wheel.
-# Default: media
-# radarr_data_dir: Directory where radarr configuration
-# data is stored.
-# Default: /var/db/radarr
-
-. /etc/rc.subr
-name=radarr
-rcvar=${name}_enable
-load_rc_config $name
-
-: ${radarr_enable:="NO"}
-: ${radarr_user:="radarr"}
-: ${radarr_group:="radarr"}
-: ${radarr_data_dir:="/config"}
-
-pidfile="${radarr_data_dir}/nzbdrone.pid"
-command="/usr/sbin/daemon"
-procname="/usr/local/bin/mono"
-command_args="-f ${procname} /usr/local/share/Radarr/Radarr.exe --data=${radarr_data_dir} --nobrowser"
-
-start_precmd=radarr_precmd
-radarr_precmd() {
-if [ ! -d ${radarr_data_dir} ]; then
-install -d -o ${radarr_user} -g ${radarr_group} ${radarr_data_dir}
-fi
-
-export XDG_CONFIG_HOME=${radarr_data_dir}
-}
-
-run_rc_command "$1"
diff --git a/archive/jailman/blueprints/radarr/install.sh b/archive/jailman/blueprints/radarr/install.sh
deleted file mode 100755
index 99442692307..00000000000
--- a/archive/jailman/blueprints/radarr/install.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for radarr
-
-# Check if dataset for completed download and it parent dataset exist, create if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_downloads}"
-createmount "$1" "${global_dataset_downloads}"/complete /mnt/fetched
-
-# Check if dataset for media library and the dataset for movies exist, create if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_media}"
-createmount "$1" "${global_dataset_media}"/movies /mnt/movies
-
-iocage exec "$1" "fetch https://github.com/Radarr/Radarr/releases/download/v0.2.0.1480/Radarr.develop.0.2.0.1480.linux.tar.gz -o /usr/local/share"
-iocage exec "$1" "tar -xzvf /usr/local/share/Radarr.develop.0.2.0.1480.linux.tar.gz -C /usr/local/share"
-iocage exec "$1" rm /usr/local/share/Radarr.develop.0.2.0.1480.linux.tar.gz
-iocage exec "$1" "pw user add radarr -c radarr -u 352 -d /nonexistent -s /usr/bin/nologin"
-iocage exec "$1" chown -R radarr:radarr /usr/local/share/Radarr /config
-iocage exec "$1" mkdir /usr/local/etc/rc.d
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/radarr/includes/radarr.rc /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/rc.d/radarr
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/radarr
-iocage exec "$1" sysrc "radarr_enable=YES"
-iocage exec "$1" service radarr restart
diff --git a/archive/jailman/blueprints/radarr/readme.md b/archive/jailman/blueprints/radarr/readme.md
deleted file mode 100644
index a2ded7d8e10..00000000000
--- a/archive/jailman/blueprints/radarr/readme.md
+++ /dev/null
@@ -1,170 +0,0 @@
-# Radarr
-
-## Original README from the radarr github:
-
-https://github.com/Radarr/Radarr
-
-# Radarr
-
-
-
-
-
-**New UI Development:** For an overview of the new UI development see [DEVELOPMENT.md](https://github.com/Radarr/Radarr/blob/aphrodite/DEVELOPMENT.md).
-
-Radarr is an **independent** fork of [Sonarr](https://github.com/Sonarr/Sonarr) reworked for automatically downloading movies via Usenet and BitTorrent.
-
-The project was inspired by other Usenet/BitTorrent movie downloaders such as CouchPotato.
-
-See the [Roadmap blogpost](https://blog.radarr.video/development/update/2018/11/11/roadmap-update.html) for an overview of planned features.
-
-## Getting Started
-
-[](https://github.com/Radarr/Radarr/wiki/Installation)
-[](https://github.com/Radarr/Radarr/wiki/Docker)
-[](https://github.com/Radarr/Radarr/wiki/Setup-Guide)
-[](https://github.com/Radarr/Radarr/wiki/FAQ)
-
-- [Install Radarr for your desired OS](https://github.com/Radarr/Radarr/wiki/Installation) _or_ use [Docker](https://github.com/Radarr/Radarr/wiki/Docker)
-- _For Linux users_, run `radarr` and _optionally_ have [Radarr start automatically](https://github.com/Radarr/Radarr/wiki/Autostart-on-Linux)
-- Connect to the UI through or in your web browser
-- See the [Setup Guide](https://github.com/Radarr/Radarr/wiki/Setup-Guide) for further configuration
-
-## Downloads
-
-| Release Type | Branch: develop (stable) | Branch: nightly (semi-unstable) | Branch: aphrodite (very-unstable) |
-| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Binary Releases | [](https://github.com/Radarr/Radarr/releases) | [](https://ci.appveyor.com/project/galli-leo/radarr-usby1/branch/develop/artifacts) | |
-| Docker | [](https://hub.docker.com/r/linuxserver/radarr) | [](https://hub.docker.com/r/linuxserver/radarr) | [](https://hub.docker.com/r/linuxserver/radarr) |
-| Docker | [](https://hub.docker.com/r/hotio/radarr) | [](https://hub.docker.com/r/hotio/radarr) | [](https://hub.docker.com/r/hotio/radarr) |
-
-## Support
-
-[](#backers)
-[](#flexible-sponsors)
-[](#sponsors)
-
-[](https://discord.gg/AD3UP37)
-[](https://www.reddit.com/r/radarr)
-[](http://feathub.com/Radarr/Radarr)
-[](https://github.com/Radarr/Radarr/issues)
-[](https://github.com/Radarr/Radarr/wiki)
-
-## Status
-
-[](https://github.com/Radarr/Radarr/issues)
-[](https://github.com/Radarr/Radarr/pulls)
-[](http://www.gnu.org/licenses/gpl.html)
-[](https://github.com/Radarr/Radarr)
-[](https://github.com/Radarr/Radarr/releases/)
-[](https://hub.docker.com/r/linuxserver/radarr/)
-[](/CHANGELOG.md#unreleased)
-
-| Service | Master | Develop |
-| -------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
-| AppVeyor | [](https://ci.appveyor.com/project/galli-leo/Radarr) | [](https://ci.appveyor.com/project/galli-leo/Radarr-usby1) |
-| Travis | [](https://travis-ci.org/Radarr/Radarr) | [](https://travis-ci.org/Radarr/Radarr) |
-
-### [Site and API Status](https://status.radarr.video)
-
-| API | Updates | Sites |
-| ------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------: |
-| [](https://api.radarr.video/v2/) | [](https://radarr.aeonlucid.com) | [](https://mappings.radarr.video/) |
-| [](https://staging.api.radarr.video/) | [](https://api.github.com/v3/) | [](https://radarr.video/) |
-
-Radarr is currently undergoing rapid development and pull requests are actively added into the repository.
-
-## Features
-
-### Current Features
-
-- Adding new movies with lots of information, such as trailers, ratings, etc.
-- Support for major platforms: Windows, Linux, macOS, Raspberry Pi, etc.
-- Can watch for better quality of the movies you have and do an automatic upgrade. _eg. from DVD to Blu-Ray_
-- Automatic failed download handling will try another release if one fails
-- Manual search so you can pick any release or to see why a release was not downloaded automatically
-- Full integration with SABnzbd and NZBGet
-- Automatically searching for releases as well as RSS Sync
-- Automatically importing downloaded movies
-- Recognizing Special Editions, Director's Cut, etc.
-- Identifying releases with hardcoded subs
-- All indexers supported by Sonarr also supported
-- New PassThePopcorn Indexer
-- QBittorrent, Deluge, rTorrent, Transmission and uTorrent download client (Other clients are coming)
-- New TorrentPotato Indexer
-- Torznab Indexer now supports Movies (Works well with [Jackett](https://github.com/Jackett/Jackett))
-- Scanning PreDB to know when a new release is available
-- Importing movies from various online sources, such as IMDb Watchlists (A complete list can be found [here](https://github.com/Radarr/Radarr/issues/114))
-- Full integration with Kodi, Plex (notification, library update)
-- And a beautiful UI
-- Importing Metadata such as trailers or subtitles
-- Adding metadata such as posters and information for Kodi and others to use
-- Advanced customization for profiles, such that Radarr will always download the copy you want
-
-### Planned Features
-
-See the [Roadmap blogpost](https://blog.radarr.video/development/update/2018/11/11/roadmap-update.html) for an overview of planned features.
-
-#### [Feature Requests](http://feathub.com/Radarr/Radarr)
-
-## Configuring the Development Environment
-
-### Requirements
-
-- [Visual Studio Community 2019](https://www.visualstudio.com/vs/community/) or [Rider](http://www.jetbrains.com/rider/)
-- [Git](https://git-scm.com/downloads)
-- [Node.js](https://nodejs.org/en/download/)
-- [Yarn](https://yarnpkg.com/)
-
-### Setup
-
-- Make sure all the required software mentioned above are installed
-- Clone the repository into your development machine ([_info_](https://help.github.com/desktop/guides/contributing/working-with-your-remote-repository-on-github-or-github-enterprise))
-- Grab the submodules `git submodule init && git submodule update`
-- Install the required Node Packages `yarn install`
-- Start gulp to monitor your dev environment for any changes that need post processing using `yarn start` command.
-
-> **Notice**
-> Gulp must be running at all times while you are working with Radarr client source files.
-
-### Build
-
-- To build run `sh build.sh`
-
-**Note:** Windows users must have bash available to do this. If you installed git, you should have a git bash utility that works.
-
-### Development
-
-- Open `Radarr.sln` in Visual Studio 2017 or run the build.sh script, if Mono is installed. Alternatively you can use Jetbrains Rider, since it works on all Platforms.
-- Make sure `NzbDrone.Console` is set as the startup project
-- Run `build.sh` before running
-
-## Supporters
-
-This project would not be possible without the support by these amazing folks. [**Become a sponsor or backer**](https://opencollective.com/radarr) to help us out!
-
-### Sponsors
-
-[](https://opencollective.com/radarr/order/3851)
-
-### Flexible Sponsors
-
-[](https://opencollective.com/radarr/order/3856)
-
-### Backers
-
-[](https://opencollective.com/radarr/order/3850)
-
-### JetBrains
-
-Thank you to [
JetBrains](http://www.jetbrains.com/) for providing us with free licenses to their great tools
-
-- [
ReSharper](http://www.jetbrains.com/resharper/)
-- [
WebStorm](http://www.jetbrains.com/webstorm/)
-- [
Rider](http://www.jetbrains.com/rider/)
-- [
dotTrace](http://www.jetbrains.com/dottrace/)
-
-## License
-
-- [GNU GPL v3](http://www.gnu.org/licenses/gpl.html)
-- Copyright 2010-2019
diff --git a/archive/jailman/blueprints/radarr/update.sh b/archive/jailman/blueprints/radarr/update.sh
deleted file mode 100755
index 6a0edae84a2..00000000000
--- a/archive/jailman/blueprints/radarr/update.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for radarr
-
-iocage exec "$1" service radarr stop
-#TODO insert code to update radarr itself here
-iocage exec "$1" chown -R radarr:radarr /usr/local/share/Radarr /config
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/radarr/includes/radarr.rc /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/rc.d/radarr
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/radarr
-iocage exec "$1" service radarr restart
diff --git a/archive/jailman/blueprints/sonarr/config.yml b/archive/jailman/blueprints/sonarr/config.yml
deleted file mode 100644
index 8d4d71d773a..00000000000
--- a/archive/jailman/blueprints/sonarr/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- sonarr:
- pkgs: mono mediainfo sqlite3
diff --git a/archive/jailman/blueprints/sonarr/includes/sonarr.rc b/archive/jailman/blueprints/sonarr/includes/sonarr.rc
deleted file mode 100644
index b50d44ad2b9..00000000000
--- a/archive/jailman/blueprints/sonarr/includes/sonarr.rc
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-
-# $FreeBSD$
-#
-# PROVIDE: sonarr
-# REQUIRE: LOGIN
-# KEYWORD: shutdown
-#
-# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
-# to enable this service:
-#
-# sonarr_enable: Set to YES to enable sonarr
-# Default: NO
-# sonarr_user: The user account used to run the sonarr daemon.
-# This is optional, however do not specifically set this to an
-# empty string as this will cause the daemon to run as root.
-# Default: media
- # sonarr_group: The group account used to run the sonarr daemon.
-# This is optional, however do not specifically set this to an
-# empty string as this will cause the daemon to run with group wheel.
-# Default: media
-# sonarr_data_dir: Directory where sonarr configuration
-# data is stored.
-# Default: /var/db/sonarr
-
-. /etc/rc.subr
-name=sonarr
-rcvar=${name}_enable
-load_rc_config $name
-
-: ${sonarr_enable:="NO"}
-: ${sonarr_user:="sonarr"}
-: ${sonarr_group:="sonarr"}
-: ${sonarr_data_dir:="/config"}
-
-pidfile="${sonarr_data_dir}/nzbdrone.pid"
-command="/usr/sbin/daemon"
-procname="/usr/local/bin/mono"
-command_args="-f ${procname} /usr/local/share/NzbDrone/NzbDrone.exe --data=${sonarr_data_dir} --nobrowser"
-
-start_precmd=sonarr_precmd
-sonarr_precmd() {
-if [ ! -d ${sonarr_data_dir} ]; then
-install -d -o ${sonarr_user} -g ${sonarr_group} ${sonarr_data_dir}
-fi
-
-export XDG_CONFIG_HOME=${sonarr_data_dir}
-}
-
-run_rc_command "$1"
diff --git a/archive/jailman/blueprints/sonarr/install.sh b/archive/jailman/blueprints/sonarr/install.sh
deleted file mode 100755
index faec9912808..00000000000
--- a/archive/jailman/blueprints/sonarr/install.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for sonarr
-
-# Check if dataset for completed download and it parent dataset exist, create if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_downloads}"
-createmount "$1" "${global_dataset_downloads}"/complete /mnt/fetched
-
-# Check if dataset for media library and the dataset for tv shows exist, create if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_media}"
-createmount "$1" "${global_dataset_media}"/shows /mnt/shows
-
-iocage exec "$1" "fetch http://download.sonarr.tv/v2/master/mono/NzbDrone.master.tar.gz -o /usr/local/share"
-iocage exec "$1" "tar -xzvf /usr/local/share/NzbDrone.master.tar.gz -C /usr/local/share"
-iocage exec "$1" rm /usr/local/share/NzbDrone.master.tar.gz
-iocage exec "$1" "pw user add sonarr -c sonarr -u 351 -d /nonexistent -s /usr/bin/nologin"
-iocage exec "$1" chown -R sonarr:sonarr /usr/local/share/NzbDrone /config
-iocage exec "$1" mkdir /usr/local/etc/rc.d
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/sonarr/includes/sonarr.rc /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/rc.d/sonarr
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/sonarr
-iocage exec "$1" sysrc "sonarr_enable=YES"
-iocage exec "$1" service sonarr restart
diff --git a/archive/jailman/blueprints/sonarr/readme.md b/archive/jailman/blueprints/sonarr/readme.md
deleted file mode 100644
index b51ea8c8537..00000000000
--- a/archive/jailman/blueprints/sonarr/readme.md
+++ /dev/null
@@ -1,63 +0,0 @@
-# Sonarr
-
-## Original README from the sonarr github:
-
-https://github.com/Sonarr/Sonarr
-
-# Sonarr
-
-Sonarr is a PVR for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.
-
-## Major Features Include:
-
-- Support for major platforms: Windows, Linux, macOS, Raspberry Pi, etc.
-- Automatically detects new episodes
-- Can scan your existing library and download any missing episodes
-- Can watch for better quality of the episodes you already have and do an automatic upgrade. _eg. from DVD to Blu-Ray_
-- Automatic failed download handling will try another release if one fails
-- Manual search so you can pick any release or to see why a release was not downloaded automatically
-- Fully configurable episode renaming
-- Full integration with SABnzbd and NZBGet
-- Full integration with Kodi, Plex (notification, library update, metadata)
-- Full support for specials and multi-episode releases
-- And a beautiful UI
-
-## Configuring Development Environment:
-
-### Requirements
-
-- [Visual Studio 2017](https://www.visualstudio.com/vs/)
-- [Git](https://git-scm.com/downloads)
-- [NodeJS](https://nodejs.org/en/download/)
-- [Yarn](https://yarnpkg.com/)
-
-### Setup
-
-- Make sure all the required software mentioned above are installed
-- Clone the repository into your development machine. [_info_](https://help.github.com/en/articles/working-with-forks)
-- Grab the submodules `git submodule init && git submodule update`
-- Install the required Node Packages `yarn`
-
-### Backend Development
-
-- Run `yarn build` to build the UI
-- Open `Sonarr.sln` in Visual Studio
-- Make sure `NzbDrone.Console` is set as the startup project
-- Build `NzbDrone.Windows` and `NzbDrone.Mono` projects
-- Build Solution
-
-### UI Development
-
-- Run `yarn watch` to build UI and rebuild automatically when changes are detected
-- Run Sonarr.Console.exe (or debug in Visual Studio)
-
-### License
-
-- [GNU GPL v3](http://www.gnu.org/licenses/gpl.html)
-- Copyright 2010-2019
-
-### Sponsors
-
-- [JetBrains](http://www.jetbrains.com/) for providing us with free licenses to their great tools
- - [ReSharper](http://www.jetbrains.com/resharper/)
- - [TeamCity](http://www.jetbrains.com/teamcity/)
diff --git a/archive/jailman/blueprints/sonarr/update.sh b/archive/jailman/blueprints/sonarr/update.sh
deleted file mode 100755
index ef7114225a5..00000000000
--- a/archive/jailman/blueprints/sonarr/update.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for sonarr
-
-iocage exec "$1" service sonarr stop
-#TODO insert code to update sonarr itself here
-iocage exec "$1" chown -R sonarr:sonarr /usr/local/share/NzbDrone /config
-# shellcheck disable=SC2154
-cp "${SCRIPT_DIR}"/blueprints/sonarr/includes/sonarr.rc /mnt/"${global_dataset_iocage}"/jails/"$1"/root/usr/local/etc/rc.d/sonarr
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/sonarr
-iocage exec "$1" service sonarr restart
diff --git a/archive/jailman/blueprints/tautulli/config.yml b/archive/jailman/blueprints/tautulli/config.yml
deleted file mode 100644
index ed994127e78..00000000000
--- a/archive/jailman/blueprints/tautulli/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- tautulli:
- pkgs: python37 py37-setuptools py37-sqlite3 py37-openssl py37-pycryptodomex python3 git
diff --git a/archive/jailman/blueprints/tautulli/install.sh b/archive/jailman/blueprints/tautulli/install.sh
deleted file mode 100755
index 82c5aa4ce67..00000000000
--- a/archive/jailman/blueprints/tautulli/install.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for Tautulli
-
-iocage exec "$1" ln -s /usr/local/bin/python3 /usr/local/bin/python
-iocage exec "$1" git clone https://github.com/Tautulli/Tautulli.git /usr/local/share/Tautulli
-iocage exec "$1" "pw user add tautulli -c tautulli -u 109 -d /nonexistent -s /usr/bin/nologin"
-iocage exec "$1" chown -R tautulli:tautulli /usr/local/share/Tautulli /config
-iocage exec "$1" cp /usr/local/share/Tautulli/init-scripts/init.freenas /usr/local/etc/rc.d/tautulli
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/tautulli
-iocage exec "$1" sysrc "tautulli_enable=YES"
-iocage exec "$1" sysrc "tautulli_flags=--datadir /config"
-iocage exec "$1" service tautulli start
diff --git a/archive/jailman/blueprints/tautulli/readme.md b/archive/jailman/blueprints/tautulli/readme.md
deleted file mode 100644
index a59f1f45610..00000000000
--- a/archive/jailman/blueprints/tautulli/readme.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# Tautulli
-
-## Original README from the tautulli github:
-
-https://github.com/Tautulli/Tautulli
-
-# Tautulli
-
-A python based web application for monitoring, analytics and notifications for [Plex Media Server](https://plex.tv).
-
-This project is based on code from [Headphones](https://github.com/rembo10/headphones) and [PlexWatchWeb](https://github.com/ecleese/plexWatchWeb).
-
-## Features
-
-- Responsive web design viewable on desktop, tablet and mobile web browsers.
-- Themed to complement Plex/Web.
-- Easy configuration setup (no separate web server required).
-- Monitor current Plex Media Server activity.
-- Fully customizable notifications for stream activity and recently added media.
-- Top statistics on home page with configurable duration and measurement metric.
-- Global watching history with search/filtering & dynamic column sorting.
-- Full user list with general information and comparison stats.
-- Individual user information including devices IP addresses.
-- Complete library statistics and media file information.
-- Rich analytics presented using Highcharts graphing.
-- Beautiful content information pages.
-- Full sync list data on all users syncing items from your library.
-- And many more!!
-
-## Preview
-
-- [Full preview gallery available on our website](https://tautulli.com)
-
-
-
-## Installation & Support
-
-[](https://python.org/downloads/release/python-2717/)
-[](https://hub.docker.com/r/tautulli/tautulli)
-[](https://hub.docker.com/r/tautulli/tautulli)
-
-| Status | Branch: `master` | Branch: `beta` | Branch: `nightly` |
-| ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Release | [](https://github.com/Tautulli/Tautulli/releases/latest)
[](https://github.com/Tautulli/Tautulli/releases/latest) | [](https://github.com/Tautulli/Tautulli/releases)
[](https://github.com/Tautulli/Tautulli/commits/beta) | [](https://github.com/Tautulli/Tautulli/commits/nightly)
[](https://github.com/Tautulli/Tautulli/commits/nightly) |
-| Docker | [](https://hub.docker.com/r/tautulli/tautulli)
[](https://github.com/Tautulli/Tautulli/actions?query=branch%3Amaster) | [](https://hub.docker.com/r/tautulli/tautulli)
[](https://github.com/Tautulli/Tautulli/actions?query=branch%3Abeta) | [](https://hub.docker.com/r/tautulli/tautulli)
[](https://github.com/Tautulli/Tautulli/actions?query=branch%3Anightly) |
-
-[](https://github.com/Tautulli/Tautulli-Wiki/wiki)
-[](https://tautulli.com/discord)
-[](https://www.reddit.com/r/Tautulli/)
-[](https://forums.plex.tv/t/tautulli-monitor-your-plex-media-server/225242)
-
-- Read the [Installation Guides](https://github.com/Tautulli/Tautulli-Wiki/wiki/Installation) for instructions to install Tautulli.
-- The [Frequently Asked Questions](https://github.com/Tautulli/Tautulli-Wiki/wiki/Frequently-Asked-Questions) in the wiki can help you with common problems.
-- Support is available on [Discord](https://tautulli.com/discord), [Reddit](https://www.reddit.com/r/Tautulli), or the [Plex Forums](https://forums.plex.tv/t/tautulli-monitor-your-plex-media-server/225242).
-
-## Issues & Feature Requests
-
-[](https://github.com/Tautulli/Tautulli-Issues)
-[](https://feathub.com/Tautulli/Tautulli)
-
-- Please see the [Issues Repository](https://github.com/Tautulli/Tautulli-Issues).
-
-## License
-
-[](https://github.com/Tautulli/Tautulli/blob/master/LICENSE)
-
-This is free software under the GPL v3 open source license. Feel free to do with it what you wish, but any modification must be open sourced. A copy of the license is included.
-
-This software includes Highsoft software libraries which you may freely distribute for non-commercial use. Commerical users must licence this software, for more information visit https://shop.highsoft.com/faq/non-commercial#non-commercial-redistribution.
diff --git a/archive/jailman/blueprints/tautulli/update.sh b/archive/jailman/blueprints/tautulli/update.sh
deleted file mode 100755
index 43b7326b2a1..00000000000
--- a/archive/jailman/blueprints/tautulli/update.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for Tautulli
-
-iocage exec "$1" service tautulli stop
-iocage exec "$1" ln -s /usr/local/bin/python3 /usr/local/bin/python
-# Tautulli is updated through pkg, this is mostly just a placeholder
-iocage exec "$1" chown -R tautulli:tautulli /usr/local/share/Tautulli /config
-iocage exec "$1" cp /usr/local/share/Tautulli/init-scripts/init.freenas /usr/local/etc/rc.d/tautulli
-iocage exec "$1" chmod u+x /usr/local/etc/rc.d/tautulli
-iocage exec "$1" service tautulli restart
diff --git a/archive/jailman/blueprints/transmission/config.yml b/archive/jailman/blueprints/transmission/config.yml
deleted file mode 100644
index 8074709b5d6..00000000000
--- a/archive/jailman/blueprints/transmission/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- transmission:
- pkgs: bash unzip unrar transmission
diff --git a/archive/jailman/blueprints/transmission/install.sh b/archive/jailman/blueprints/transmission/install.sh
deleted file mode 100755
index a22a570f9ad..00000000000
--- a/archive/jailman/blueprints/transmission/install.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for transmission
-
-# Check if dataset Downloads dataset exist, create if they do not.
-# shellcheck disable=SC2154
-createmount "$1" "${global_dataset_downloads}" /mnt/downloads
-
-# Check if dataset Complete Downloads dataset exist, create if they do not.
-createmount "$1" "${global_dataset_downloads}"/complete /mnt/downloads/complete
-
-# Check if dataset InComplete Downloads dataset exist, create if they do not.
-createmount "$1" "${global_dataset_downloads}"/incomplete /mnt/downloads/incomplete
-
-
-iocage exec "$1" chown -R transmission:transmission /config
-iocage exec "$1" sysrc "transmission_enable=YES"
-iocage exec "$1" sysrc "transmission_conf_dir=/config"
-iocage exec "$1" sysrc "transmission_download_dir=/mnt/downloads/complete"
-iocage exec "$1" service transmission restart
diff --git a/archive/jailman/blueprints/transmission/readme.md b/archive/jailman/blueprints/transmission/readme.md
deleted file mode 100644
index d9beec18096..00000000000
--- a/archive/jailman/blueprints/transmission/readme.md
+++ /dev/null
@@ -1,84 +0,0 @@
-# Transmission
-
-## Original README from the transmission github:
-
-https://github.com/transmission/transmission
-
-# Transmission
-
-## About
-
-Transmission is a fast, easy, and free BitTorrent client. It comes in several flavors:
-
-- A native Mac OS X GUI application
-- GTK+ and Qt GUI applications for Linux, BSD, etc.
-- A headless daemon for servers and routers
-- A web UI for remote controlling any of the above
-
-Visit https://transmissionbt.com/ for more information.
-
-## Command line interface notes
-
-Transmission is fully supported in transmission-remote, the preferred cli client.
-
-Three standalone tools to examine, create, and edit .torrent files exist: transmission-show, transmission-create, and transmission-edit, respectively.
-
-Prior to development of transmission-remote, the standalone client transmission-cli was created. Limited to a single torrent at a time, transmission-cli is deprecated and exists primarily to support older hardware dependent upon it. In almost all instances, transmission-remote should be used instead.
-
-Different distributions may choose to package any or all of these tools in one or more separate packages.
-
-## Building
-
-Transmission has an Xcode project file (Transmission.xcodeproj) for building in Xcode.
-
-For a more detailed description, and dependencies, visit: https://github.com/transmission/transmission/wiki
-
-### Building a Transmission release from the command line
-
- $ tar xf transmission-2.92.tar.xz
- $ cd transmission-2.92
- $ mkdir build
- $ cd build
- $ cmake ..
- $ make
- $ sudo make install
-
-### Building Transmission from the nightly builds
-
-Download a tarball from https://build.transmissionbt.com/job/trunk-linux/ and follow the steps from the previous section.
-
-If you're new to building programs from source code, this is typically easier than building from Git.
-
-### Building Transmission from Git (first time)
-
- $ git clone https://github.com/transmission/transmission Transmission
- $ cd Transmission
- $ git submodule update --init
- $ mkdir build
- $ cd build
- $ cmake ..
- $ make
- $ sudo make install
-
-### Building Transmission from Git (updating)
-
- $ cd Transmission/build
- $ make clean
- $ git pull --rebase --prune
- $ git submodule update
- $ cmake ..
- $ make
- $ sudo make install
-
-## Contributing
-
-### Code Style
-
-You would want to setup your editor to make use of uncrustify.cfg and .jsbeautifyrc configuration files located in the root of this repository.
-
-If for some reason you are unwilling or unable to do so, there is a shell script which you could run either directly or via docker-compose:
-
- $ ./code_style.sh
- or
- $ docker-compose build --pull
- $ docker-compose run --rm code_style
diff --git a/archive/jailman/blueprints/transmission/update.sh b/archive/jailman/blueprints/transmission/update.sh
deleted file mode 100755
index d58d7997cb1..00000000000
--- a/archive/jailman/blueprints/transmission/update.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for transmission
-
-iocage exec "$1" service transmission stop
-
-# Transmision is updated during PKG update, this file is mostly just a placeholder
-iocage exec "$1" chown -R transmission:transmission /config
-iocage exec "$1" service transmission restart
diff --git a/archive/jailman/blueprints/unifi/config.yml b/archive/jailman/blueprints/unifi/config.yml
deleted file mode 100644
index c5e3307d407..00000000000
--- a/archive/jailman/blueprints/unifi/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blueprint:
- unifi:
- pkgs: jq unifi5
diff --git a/archive/jailman/blueprints/unifi/includes/mongodb.conf b/archive/jailman/blueprints/unifi/includes/mongodb.conf
deleted file mode 100644
index e3cfca8903e..00000000000
--- a/archive/jailman/blueprints/unifi/includes/mongodb.conf
+++ /dev/null
@@ -1,45 +0,0 @@
-# mongod.conf
-
-# for documentation of all options, see:
-# http://docs.mongodb.org/manual/reference/configuration-options/
-
-# where to write logging data.
-systemLog:
- destination: file
- logAppend: true
- path: /var/db/mongodb/mongod.log
-
-# Where and how to store data.
-storage:
- dbPath: /config/mongodb
- journal:
- enabled: true
-# engine:
-# mmapv1:
-# wiredTiger:
-
-# how the process runs
-processManagement:
- fork: true # fork and run in background
- pidFilePath: /var/db/mongodb/mongod.lock # location of pidfile
- timeZoneInfo: /usr/share/zoneinfo
-
-# network interfaces
-net:
- port: 27017
- bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on all interfaces.
-
-
-#security:
-
-#operationProfiling:
-
-#replication:
-
-#sharding:
-
-## Enterprise-Only Options
-
-#auditLog:
-
-#snmp:
diff --git a/archive/jailman/blueprints/unifi/includes/rc/mongod.rc b/archive/jailman/blueprints/unifi/includes/rc/mongod.rc
deleted file mode 100644
index 25634a91b57..00000000000
--- a/archive/jailman/blueprints/unifi/includes/rc/mongod.rc
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/bin/sh
-# shellcheck disable=SC1091,SC2034,SC2223,SC2154,SC1090,SC2046,SC2086,SC2155,SC2181,SC2006
-
-# PROVIDE: mongod
-# REQUIRE: NETWORK ldconfig
-# KEYWORD: shutdown
-#
-# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
-# to enable this service:
-#
-# mongod_enable (bool): Set to "NO" by default.
-# Set it to "YES" to enable mongod.
-# mongod_limits (bool): Set to "NO" by default.
-# Set it to yes to run `limits -e -U mongodb`
-# just before mongod starts.
-# mongod_dbpath (str): Default to "/var/db/mongodb"
-# Base database directory.
-# mongod_flags (str): Custom additional arguments to be passed to mongod.
-# Default to "--logpath ${mongod_dbpath}/mongod.log --logappend".
-# mongod_config (str): Default to "/usr/local/etc/mongodb.conf"
-# Path to config file
-#
-
-. /etc/rc.subr
-
-name="mongod"
-rcvar=mongod_enable
-
-load_rc_config $name
-
-: ${mongod_enable="NO"}
-: ${mongod_limits="NO"}
-: ${mongod_dbpath="/config/mongodb"}
-: ${mongod_flags="--logpath ${mongod_dbpath}/mongod.log --logappend --setParameter=disabledSecureAllocatorDomains=\*"}
-: ${mongod_user="mongodb"}
-: ${mongod_group="mongodb"}
-: ${mongod_config="/usr/local/etc/mongodb.conf"}
-
-pidfile="${mongod_dbpath}/mongod.lock"
-command=/usr/local/bin/${name}
-command_args="--config $mongod_config --dbpath $mongod_dbpath --fork >/dev/null 2>/dev/null"
-start_precmd="${name}_prestart"
-
-mongod_create_dbpath()
-{
- mkdir "${mongod_dbpath}" >/dev/null 2>/dev/null
- [ $? -eq 0 ] && chown -R "${mongod_user}":"${mongod_group}" "${mongod_dbpath}"
-}
-
-mongod_prestart()
-{
- if [ ! -d "${mongod_dbpath}" ]; then
- mongod_create_dbpath || return 1
- fi
- if checkyesno mongod_limits; then
- # TODO check this and clean this up
- # Shellcheck disable=SC2046,SC2006
- eval `/usr/bin/limits -e -U ${mongod_user}` 2>/dev/null
- else
- return 0
- fi
-}
-
-run_rc_command "$1"
diff --git a/archive/jailman/blueprints/unifi/includes/rc/unifi.rc b/archive/jailman/blueprints/unifi/includes/rc/unifi.rc
deleted file mode 100644
index 82d5d12565d..00000000000
--- a/archive/jailman/blueprints/unifi/includes/rc/unifi.rc
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/sh
-# shellcheck disable=SC1091,SC2034,SC2223,SC2154,SC1090,SC2046,SC2086,SC2155,SC2237
-#
-# Created by: Mark Felder
-# $FreeBSD: branches/2020Q2/net-mgmt/unifi5/files/unifi.in 512281 2019-09-18 17:37:59Z feld $
-#
-
-# PROVIDE: unifi
-# REQUIRE: LOGIN
-# KEYWORD: shutdown
-
-#
-# Add the following line to /etc/rc.conf to enable `unifi':
-#
-# unifi_enable="YES"
-#
-# Other configuration settings for unifi that can be set in /etc/rc.conf:
-#
-# unifi_user (str)
-# This is the user that unifi runs as
-# Set to unifi by default
-#
-# unifi_group (str)
-# This is the group that unifi runs as
-# Set to unifi by default
-#
-# unifi_chdir (str)
-# This is the directory that unifi chdirs into before starting
-# Set to /usr/local/share/java/unifi by default
-#
-# unifi_java_home (str)
-# The path to the base directory for the Java to use to run unifi
-# Defaults to /usr/local/openjdk8
-#
-# unifi_javaflags (str)
-# Flags passed to Java to run unifi
-# Set to "-Djava.awt.headless=true -Xmx1024M" by default
-#
-
-. /etc/rc.subr
-name=unifi
-
-rcvar=unifi_enable
-load_rc_config ${name}
-
-: ${unifi_enable:=NO}
-: ${unifi_user:=unifi}
-: ${unifi_group:=unifi}
-: ${unifi_chdir=/config/controller/unifi}
-: ${unifi_java_home=/usr/local/openjdk8}
-: ${unifi_javaflags="-Djava.awt.headless=true -Xmx1024M"}
-
-pidfile="/var/run/unifi/${name}.pid"
-procname=${unifi_java_home}/bin/java
-command=/usr/sbin/daemon
-command_args="-f -p ${pidfile} ${unifi_java_home}/bin/java ${unifi_javaflags} com.ubnt.ace.Launcher start"
-start_precmd=start_precmd
-stop_precmd=stop_precmd
-stop_postcmd=stop_postcmd
-
-export CLASSPATH=$(echo ${unifi_chdir}/lib/*.jar | tr ' ' ':')
-
-start_precmd()
-{
- if [ ! -e /var/run/unifi ] ; then
- install -d -o unifi -g unifi /var/run/unifi;
- fi
-}
-
-stop_precmd()
-{
- if [ -r ${pidfile} ]; then
- _UNIFIPID=$(check_pidfile ${pidfile} ${procname})
- export _UNIFI_CHILDREN=$(pgrep -P ${_UNIFIPID})
- fi
-}
-
-stop_postcmd()
-{
- if ! [ -z ${_UNIFI_CHILDREN} ]; then
- echo "Cleaning up leftover child processes."
- kill $sig_stop ${_UNIFI_CHILDREN}
- wait_for_pids ${_UNIFI_CHILDREN}
- fi
-}
-
-run_rc_command "$1"
diff --git a/archive/jailman/blueprints/unifi/includes/rc/unifi_poller.rc b/archive/jailman/blueprints/unifi/includes/rc/unifi_poller.rc
deleted file mode 100644
index ff1ee599dd6..00000000000
--- a/archive/jailman/blueprints/unifi/includes/rc/unifi_poller.rc
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-# shellcheck disable=SC1091,SC2034,SC2223,SC2154,SC1090,SC2046
-#
-# FreeBSD rc.d startup script for unifi-poller.
-#
-# PROVIDE: unifi-poller
-# REQUIRE: networking syslog
-# KEYWORD:
-
-. /etc/rc.subr
-
-name="unifi_poller"
-real_name="unifi-poller"
-rcvar="unifi_poller_enable"
-unifi_poller_command="/usr/local/bin/${real_name}"
-unifi_poller_user="nobody"
-unifi_poller_config="/config/up.conf"
-pidfile="/var/run/${real_name}/pid"
-
-# This runs `daemon` as the `unifi_poller_user` user.
-command="/usr/sbin/daemon"
-command_args="-P ${pidfile} -r -t ${real_name} -T ${real_name} -l daemon ${unifi_poller_command} -c ${unifi_poller_config}"
-
-load_rc_config ${name}
-: ${unifi_poller_enable:=no}
-
-# Make a place for the pid file.
-mkdir -p $(dirname ${pidfile})
-chown -R $unifi_poller_user $(dirname ${pidfile})
-
-# Suck in optional exported override variables.
-# ie. add something like the following to this file: export UP_POLLER_DEBUG=true
-[ -f "/usr/local/etc/defaults/${real_name}" ] && . "/usr/local/etc/defaults/${real_name}"
-
-# Go!
-run_rc_command "$1"
diff --git a/archive/jailman/blueprints/unifi/includes/up.conf b/archive/jailman/blueprints/unifi/includes/up.conf
deleted file mode 100644
index 9ecb7f0b932..00000000000
--- a/archive/jailman/blueprints/unifi/includes/up.conf
+++ /dev/null
@@ -1,106 +0,0 @@
-# UniFi Poller v2 primary configuration file. TOML FORMAT #
-###########################################################
-
-[poller]
- # Turns on line numbers, microsecond logging, and a per-device log.
- # The default is false, but I personally leave this on at home (four devices).
- # This may be noisy if you have a lot of devices. It adds one line per device.
- debug = false
-
- # Turns off per-interval logs. Only startup and error logs will be emitted.
- # Recommend enabling debug with this setting for better error logging.
- quiet = true
-
- # Load dynamic plugins. Advanced use; only sample mysql plugin provided by default.
- plugins = []
-
-#### OUTPUTS
-
- # If you don't use an output, you can disable it.
-
-[prometheus]
- disable = true
- # This controls on which ip and port /metrics is exported when mode is "prometheus".
- # This has no effect in other modes. Must contain a colon and port.
- http_listen = "0.0.0.0:9130"
- report_errors = false
-
-[influxdb]
- disable = false
- # InfluxDB does not require auth by default, so the user/password are probably unimportant.
- url = "dbip"
- user = "influxdbuser"
- pass = "influxdbpass"
- # Be sure to create this database.
- db = "unifidb"
- # If your InfluxDB uses a valid SSL cert, set this to true.
- verify_ssl = false
- # The UniFi Controller only updates traffic stats about every 30 seconds.
- # Setting this to something lower may lead to "zeros" in your data.
- # If you're getting zeros now, set this to "1m"
- interval = "30s"
-
-#### INPUTS
-
-[unifi]
- # Setting this to true and providing default credentials allows you to skip
- # configuring controllers in this config file. Instead you configure them in
- # your prometheus.yml config. Prometheus then sends the controller URL to
- # unifi-poller when it performs the scrape. This is useful if you have many,
- # or changing controllers. Most people can leave this off. See wiki for more.
- dynamic = false
-
-# The following section contains the default credentials/configuration for any
-# dynamic controller (see above section), or the primary controller if you do not
-# provide one and dynamic is disabled. In other words, you can just add your
-# controller here and delete the following section.
-[unifi.defaults]
- #role = "main controller"
- url = "https://127.0.0.1:8443"
- user = "unifiuser"
- pass = "unifipassword"
- sites = ["all"]
- save_ids = false
- save_dpi = false
- save_sites = true
- verify_ssl = false
-
-# The following is optional and used for configurations with multiple controllers.
-
-# You may repeat the following section to poll multiple controllers.
-#[[unifi.controller]]
- # Friendly name used in dashboards. Uses URL if left empty; which is fine.
- # Avoid changing this later because it will live forever in your database.
- # Multiple controllers may share a role. This allows grouping during scrapes.
- #role = ""
- #url = "https://127.0.0.1:8443"
-
- # Make a read-only user in the UniFi Admin Settings, allow it access to all sites.
- #user = "unifipoller"
- #pass = "4BB9345C-2341-48D7-99F5-E01B583FF77F"
-
- # If the controller has more than one site, specify which sites to poll here.
- # Set this to ["default"] to poll only the first site on the controller.
- # A setting of ["all"] will poll all sites; this works if you only have 1 site too.
- #sites = ["all"]
-
- # Enable collection of Intrusion Detection System Data (InfluxDB only).
- # Only useful if IDS or IPS are enabled on one of the sites.
- #save_ids = false
-
- # Enable collection of Deep Packet Inspection data. This data breaks down traffic
- # types for each client and site, it powers a dedicated DPI dashboard.
- # Enabling this adds roughly 150 data points per client. That's 6000 metrics for
- # 40 clients. This adds a little bit of poller run time per interval and causes
- # more API requests to your controller(s). Don't let these "cons" sway you:
- # it's cool data. Please provide feedback on your experience with this feature.
- #save_dpi = false
-
- # Enable collection of site data. This data powers the Network Sites dashboard.
- # It's not valuable to everyone and setting this to false will save resources.
- #save_sites = true
-
- # If your UniFi controller has a valid SSL certificate (like lets encrypt),
- # you can enable this option to validate it. Otherwise, any SSL certificate is
- # valid. If you don't know if you have a valid SSL cert, then you don't have one.
- #verify_ssl = false
diff --git a/archive/jailman/blueprints/unifi/install.sh b/archive/jailman/blueprints/unifi/install.sh
deleted file mode 100755
index 1757df5c603..00000000000
--- a/archive/jailman/blueprints/unifi/install.sh
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the install script for unifi-controller & unifi-poller
-
-# Initialize variables
-# shellcheck disable=SC2154
-JAIL_IP="jail_${1}_ip4_addr"
-JAIL_IP="${!JAIL_IP%/*}"
-
-# shellcheck disable=SC2154
-DB_JAIL="jail_${1}_db_jail"
-
-POLLER="jail_${1}_unifi_poller"
-
-# shellcheck disable=SC2154
-DB_IP="jail_${!DB_JAIL}_ip4_addr"
-DB_IP="${!DB_IP%/*}"
-
-# shellcheck disable=SC2154
-DB_NAME="jail_${1}_up_db_name"
-DB_NAME="${!DB_NAME:-$1}"
-
-# shellcheck disable=SC2154
-DB_USER="jail_${1}_up_db_user"
-DB_USER="${!DB_USER:-$DB_NAME}"
-
-# shellcheck disable=SC2154
-DB_PASS="jail_${1}_up_db_password"
-
-# shellcheck disable=SC2154
-UP_USER="jail_${1}_up_user"
-UP_USER="${!UP_USER:-$1}"
-
-# shellcheck disable=SC2154
-UP_PASS="jail_${1}_up_password"
-INCLUDES_PATH="${SCRIPT_DIR}/blueprints/unifi/includes"
-
-if [ -z "${!DB_PASS}" ]; then
- echo "up_db_password can't be empty"
- exit 1
-fi
-
-if [ -z "${!DB_JAIL}" ]; then
- echo "db_jail can't be empty"
- exit 1
-fi
-
-if [ -z "${!UP_PASS}" ]; then
- echo "up_password can't be empty"
- exit 1
-fi
-
-# Enable persistent Unifi Controller data
-iocage exec "${1}" mkdir -p /config/controller/mongodb
-iocage exec "${1}" cp -Rp /usr/local/share/java/unifi /config/controller
-iocage exec "${1}" chown -R mongodb:mongodb /config/controller/mongodb
-# shellcheck disable=SC2154
-cp "${INCLUDES_PATH}"/mongodb.conf /mnt/"${global_dataset_iocage}"/jails/"${1}"/root/usr/local/etc
-# shellcheck disable=SC2154
-cp "${INCLUDES_PATH}"/rc/mongod.rc /mnt/"${global_dataset_iocage}"/jails/"${1}"/root/usr/local/etc/rc.d/mongod
-# shellcheck disable=SC2154
-cp "${INCLUDES_PATH}"/rc/unifi.rc /mnt/"${global_dataset_iocage}"/jails/"${1}"/root/usr/local/etc/rc.d/unifi
-iocage exec "${1}" sysrc unifi_enable=YES
-iocage exec "${1}" service unifi start
-
-# shellcheck disable=SC2154
-if [ "${!POLLER}" == true ]; then
- # Check if influxdb container exists, create unifi database if it does, error if it is not.
- echo "Checking if the database jail and database exist..."
- if [[ -d /mnt/"${global_dataset_iocage}"/jails/"${!DB_JAIL}" ]]; then
- DB_EXISTING=$(iocage exec "${!DB_JAIL}" curl -G http://"${DB_IP}":8086/query --data-urlencode 'q=SHOW DATABASES' | jq '.results [] | .series [] | .values []' | grep "$DB_NAME" | sed 's/"//g' | sed 's/^ *//g')
- if [[ "$DB_NAME" == "$DB_EXISTING" ]]; then
- echo "${!DB_JAIL} jail with database ${DB_NAME} already exists. Skipping database creation... "
- else
- echo "${!DB_JAIL} jail exists, but database ${DB_NAME} does not. Creating database ${DB_NAME}."
- if [[ -z "${DB_USER}" ]] || [[ -z "${!DB_PASS}" ]]; then
- echo "Database username and password not provided. Cannot create database without credentials. Exiting..."
- exit 1
- else
- # shellcheck disable=SC2027,2086
- iocage exec "${!DB_JAIL}" "curl -XPOST -u ${DB_USER}:${!DB_PASS} http://"${DB_IP}":8086/query --data-urlencode 'q=CREATE DATABASE ${DB_NAME}'"
- echo "Database ${DB_NAME} created with username ${DB_USER} with password ${!DB_PASS}."
- fi
- fi
- else
- echo "Influxdb jail does not exist. Unifi-Poller requires Influxdb jail. Please install the Influxdb jail."
- exit 1
- fi
-
- # Download and install Unifi-Poller
- FILE_NAME=$(curl -s https://api.github.com/repos/unifi-poller/unifi-poller/releases/latest | jq -r ".assets[] | select(.name | contains(\"amd64.txz\")) | .name")
- DOWNLOAD=$(curl -s https://api.github.com/repos/unifi-poller/unifi-poller/releases/latest | jq -r ".assets[] | select(.name | contains(\"amd64.txz\")) | .browser_download_url")
- iocage exec "${1}" fetch -o /config "${DOWNLOAD}"
-
- # Install downloaded Unifi-Poller package, configure and enable
- iocage exec "${1}" pkg install -qy /config/"${FILE_NAME}"
- # shellcheck disable=SC2154
- cp "${INCLUDES_PATH}"/up.conf /mnt/"${global_dataset_config}"/"${1}"
- # shellcheck disable=SC2154
- cp "${INCLUDES_PATH}"/rc/unifi_poller.rc /mnt/"${global_dataset_iocage}"/jails/"${1}"/root/usr/local/etc/rc.d/unifi_poller
- chmod +x /mnt/"${global_dataset_iocage}"/jails/"${1}"/root/usr/local/etc/rc.d/unifi_poller
- iocage exec "${1}" sed -i '' "s|influxdbuser|${DB_USER}|" /config/up.conf
- iocage exec "${1}" sed -i '' "s|influxdbpass|${!DB_PASS}|" /config/up.conf
- iocage exec "${1}" sed -i '' "s|unifidb|${DB_NAME}|" /config/up.conf
- iocage exec "${1}" sed -i '' "s|unifiuser|${UP_USER}|" /config/up.conf
- iocage exec "${1}" sed -i '' "s|unifipassword|${!UP_PASS}|" /config/up.conf
- iocage exec "${1}" sed -i '' "s|dbip|http://${DB_IP}:8086|" /config/up.conf
-
-
- iocage exec "${1}" sysrc unifi_poller_enable=YES
- iocage exec "${1}" service unifi_poller start
-
- echo "Installation complete!"
- echo "Unifi Controller is accessible at https://${JAIL_IP}:8443."
- echo "Please login to the Unifi Controller and add ${UP_USER} as a read-only user."
- echo "In Grafana, add Unifi-Poller as a data source."
-else
- echo "Installation complete!"
- echo "Unifi Controller is accessible at https://${JAIL_IP}:8443."
-fi
diff --git a/archive/jailman/blueprints/unifi/readme.md b/archive/jailman/blueprints/unifi/readme.md
deleted file mode 100644
index d767dc1d4e7..00000000000
--- a/archive/jailman/blueprints/unifi/readme.md
+++ /dev/null
@@ -1,151 +0,0 @@
-# Unifi Controller
-
-### Installation:
-
-- This jail requires an existing InfluxDB jail. InfluxDB may be created using the same install command, as long as influxdb is listed first.
-- Once the script runs, a user must be created in the Unifi Controller software for your Unifi-Poller user.
-- To view the data from Unifi-Poller, Grafana is required. Add the unifi InfluxDB database as a data source in Grafana.
-
-### Config Description
-
-- unifi_poller: boolean, true if you want to also install unifi-poller
-- db_jail: This is the name of your influxdb database jail, should be influxdb.
-- unifi_db_name: The name of the database that will be created in influxdb for Unifi Poller.
-- unifi_db_user & unifi_db_password: The created database's credentials for Unifi Poller.
-- up_user & up_password: The Unifi-Poller user credentials. This user must be created in the Unifi Controller web gui after install matching these credentials. This is for the connection between Unifi Controller & Unifi Poller
-
-### Unifi-Controller Post-Install
-
-After the script runs and the unifi jail is running, open the web gui of the unifi jail at port 8443 (i.e. https://192.168.2.250:8443). After completing the initial setup wizard, go to Admins --> Add New Admin. Select "Manually set and share the password", enter the username and password used for up_user & up_password. Uncheck 'Require the user to change their password'. Verify "Role" is set to 'Read Only'. Click Create.
-
-## Unifi Controller documentation can be found at https://www.ui.com/download/unifi/default/default/unifi-controller-v5-user-guide
-
-## Original README from the upstream Unifi-Poller Github.
-
-https://github.com/unifi-poller/unifi-poller
-
-
-
-[](https://discord.gg/KnyKYt2)
-[](https://twitter.com/TwitchCaptain)
-[](http://grafana.com/dashboards?search=unifi-poller)
-[](https://hub.docker.com/r/golift/unifi-poller)
-[](https://www.somsubhra.com/github-release-stats/?username=unifi-poller&repository=unifi-poller)
-
-[](https://github.com/golift/unifi)
-[](https://github.com/golift/application-builder)
-[](https://github.com/unifi-poller/unifi-poller)
-[](https://travis-ci.org/unifi-poller/unifi-poller)
-
-Collect your UniFi controller data and report it to an InfluxDB instance,
-or export it for Prometheus collection.
-[Twelve Grafana Dashboards](http://grafana.com/dashboards?search=unifi-poller)
-included; with screenshots. Six for InfluxDB and six for Prometheus.
-
-## Installation
-
-[See the Wiki!](https://github.com/unifi-poller/unifi-poller/wiki/Installation)
-We have a special place for [Docker Users](https://github.com/unifi-poller/unifi-poller/wiki/Docker).
-I'm willing to help if you have troubles.
-Open an [Issue](https://github.com/unifi-poller/unifi-poller/issues) and
-we'll figure out how to get things working for you. You can also get help in
-the #unifi-poller channel on the [Ubiquiti Discord server](https://discord.gg/KnyKYt2). I've also
-[provided a forum post](https://community.ui.com/questions/Unifi-Poller-Store-Unifi-Controller-Metrics-in-InfluxDB-without-SNMP/58a0ea34-d2b3-41cd-93bb-d95d3896d1a1)
-you may use to get additional help.
-
-## Description
-
-[Ubiquiti](https://www.ui.com) makes networking devices like switches, gateways
-(routers) and wireless access points. They have a line of equipment named
-[UniFi](https://www.ui.com/products/#unifi) that uses a
-[controller](https://www.ui.com/download/unifi/) to keep stats and simplify network
-device configuration. This controller can be installed on Windows, macOS, FreeBSD,
-Linux or Docker. Ubiquiti also provides a dedicated hardware device called a
-[CloudKey](https://www.ui.com/unifi/unifi-cloud-key/) that runs the controller software.
-More recently they've developed the Dream Machine; it's still in
-beta / early access, but UniFi Poller can collect its data!
-
-UniFi Poller is a small Golang application that runs on Windows, macOS, FreeBSD,
-Linux or Docker. In Influx-mode it polls a UniFi controller every 30 seconds for
-measurements and exports the data to an Influx database. In Prometheus mode the
-poller opens a web port and accepts Prometheus polling. It converts the UniFi
-Controller API data into Prometheus exports on the fly.
-
-This application requires your controller to be running all the time. If you run
-a UniFi controller, there's no excuse not to install
-[Influx](https://github.com/unifi-poller/unifi-poller/wiki/InfluxDB) or
-[Prometheus](https://prometheus.io),
-[Grafana](https://github.com/unifi-poller/unifi-poller/wiki/Grafana) and this app.
-You'll have a plethora of data at your fingertips and the ability to craft custom
-graphs to slice the data any way you choose. Good luck!
-
-## Backstory
-
-I found a simple piece of code on GitHub that sorta did what I needed;
-we all know that story. I wanted more data, so I added more data collection.
-I probably wouldn't have made it this far if [Garrett](https://github.com/dewski/unifi)
-hadn't written the original code I started with. Many props my man.
-The original code pulled only the client data. This app now pulls data
-for clients, access points, security gateways, dream machines and switches.
-
-I've been trying to get my UAP data into Grafana. Sure, google search that.
-You'll find [this](https://community.ubnt.com/t5/UniFi-Wireless/Grafana-dashboard-for-UniFi-APs-now-available/td-p/1833532).
-What if you don't want to deal with SNMP?
-Well, here you go. I've replicated 400% of what you see on those SNMP-powered
-dashboards with this Go app running on the same mac as my UniFi controller.
-All without enabling SNMP nor trying to understand those OIDs. Mad props
-to [waterside](https://community.ubnt.com/t5/user/viewprofilepage/user-id/303058)
-for making this dashboard; it gave me a fantastic start to making my own dashboards.
-
-## Operation
-
-You can control this app with puppet, chef, saltstack, homebrew or a simple bash
-script if you needed to. Packages are available for macOS, Linux, FreeBSD and Docker.
-It works just fine on [Windows](https://github.com/unifi-poller/unifi-poller/wiki/Windows) too.
-Most people prefer Docker, and this app is right at home in that environment.
-
-## What's it look like?
-
-There are 12 total dashboards available; the 6 InfluxDB dashboards are very similar
-to the 6 Prometheus dashboards. Below you'll find screenshots of the first four dashboards.
-
-##### Client Dashboard (InfluxDB)
-
-
-
-##### USG Dashboard (InfluxDB)
-
-
-
-##### UAP Dashboard (InfluxDB)
-
-
-
-##### USW / Switch Dashboard (InfluxDB)
-
-You can drill down into specific sites, switches, and ports. Compare ports in different
-sites side-by-side. So easy! This screenshot barely does it justice.
-
-
-## Integrations
-
-The following fine folks are providing their services, completely free! These service
-integrations are used for things like storage, building, compiling, distribution and
-documentation support. This project succeeds because of them. Thank you!
-
-
-
-
-
-
-
-
-
-
-
-## Copyright & License
-
-
-
-- Copyright © 2018-2020 David Newhall II.
-- See [LICENSE](LICENSE) for license information.
diff --git a/archive/jailman/blueprints/unifi/update.sh b/archive/jailman/blueprints/unifi/update.sh
deleted file mode 100755
index 9f712cd7676..00000000000
--- a/archive/jailman/blueprints/unifi/update.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/usr/local/bin/bash
-# This file contains the update script for unifi
-# Unifi Controller is updated through pkg, Unifi-Poller is not. This script updates Unifi-Poller
-
-POLLER="jail_${1}_unifi_poller"
-
-# shellcheck disable=SC2154
-if [ "${!POLLER}" == true ]; then
- FILE_NAME=$(curl -s https://api.github.com/repos/unifi-poller/unifi-poller/releases/latest | jq -r ".assets[] | select(.name | contains(\"amd64.txz\")) | .name")
- DOWNLOAD=$(curl -s https://api.github.com/repos/unifi-poller/unifi-poller/releases/latest | jq -r ".assets[] | select(.name | contains(\"amd64.txz\")) | .browser_download_url")
-
- # Check to see if there is an update.
- # shellcheck disable=SC2154
- if [[ -f /mnt/"${global_dataset_config}"/"${1}"/"${FILE_NAME}" ]]; then
- echo "Unifi-Poller is up to date."
- exit 1
- else
- # Download and install the package
- iocage exec "${1}" fetch -o /config "${DOWNLOAD}"
- iocage exec "${1}" pkg install -qy /config/"${FILE_NAME}"
-
- iocage exec "${1}" service unifi_poller restart
- fi
-else
- echo "Skipping Unifi Poller for update, not installed"
-fi
-
-iocage exec "${1}" service unifi restart
-echo "Update complete!"
diff --git a/archive/jailman/config.yml.example b/archive/jailman/config.yml.example
deleted file mode 100644
index 42c082a3cfb..00000000000
--- a/archive/jailman/config.yml.example
+++ /dev/null
@@ -1,105 +0,0 @@
-global:
- # Config file syntax version (not same as script version)
- version: 1.2
- # Relevant dataset paths, please use the ZFS dataset syntax such as: tank/apps
- dataset:
- # dataset for internal jail config files
- config: tank/apps
- # Media library dataset
- media: tank/media
- # Parent downloads dataset
- # (is going to contain: Complete and Incomplete datasets for downloads)
- downloads: tank/downloads
- jails:
- # jail version to install
- version: 11.3-RELEASE
- # Global pkgs to install in all jails.
- # Please use standard space delimited pkg install syntax.
- pkgs: curl ca_root_nss bash
-
-jail:
- plex:
- blueprint: plex
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- beta: false
-
- lidarr:
- blueprint: lidarr
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- sonarr:
- blueprint: sonarr
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- radarr:
- blueprint: radarr
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- kms:
- blueprint: kms
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- jackett:
- blueprint: jackett
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- organizr:
- blueprint: organizr
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- tautulli:
- blueprint: tautulli
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
- transmission:
- blueprint: transmission
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
-
-
- nextcloud:
- blueprint: nextcloud
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- time_zone: Europe/Amsterdam
- host_name: cloud.example.com
- db_jail: "mariadb"
- admin_password: "PUTYOUROWNADMINPASSWORDHERE"
- db_password: "PLEASEALSOPUTYOURPASSWORDHEREADIFFERNTONE"
-
- mariadb:
- blueprint: mariadb
- ip4_addr: 192.168.1.98/24
- gateway: 192.168.1.1
- db_root_password: ReplaceThisWithYourOwnRootPAssword
- host_name: mariadb.local.example
-
- bitwarden:
- blueprint: bitwarden
- ip4_addr: 192.168.1.97/24
- gateway: 192.168.1.1
- db_jail: "mariadb"
- db_password: "YourDBPasswordHerePLEASE"
- admin_token: "PUTYOURADMINTOKENHEREANDREMOVETHIS"
-
- influxdb:
- blueprint: influxdb
- ip4_addr: 192.168.1.250/24
- gateway: 192.168.1.1
-
- unifi:
- blueprint: unifi
- ip4_addr: 192.168.1.251/24
- gateway: 192.168.1.1
- unifi_poller: true
- db_jail: influxdb
- up_db_password: unifi-poller
- up_password: upoller
diff --git a/archive/jailman/docs/CODE_OF_CONDUCT.md b/archive/jailman/docs/CODE_OF_CONDUCT.md
deleted file mode 100644
index fe93daa5ec9..00000000000
--- a/archive/jailman/docs/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# Code of Conduct
-
-## Our Pledge
-
-In the interest of fostering an open and welcoming environment, we as
-contributors and maintainers pledge to making participation in our project and
-our community a harassment-free experience for everyone, regardless of age, body
-size, disability, ethnicity, sex characteristics, gender, level of experience,
-education, socio-economic status, nationality, personal appearance, race,
-religion, or sexual identity and orientation.
-
-## Our Standards
-
-Examples of behavior that contributes to creating a positive environment
-include:
-
-- Being respectful of differing viewpoints and experiences
-- Gracefully accepting constructive criticism
-- Focusing on what is best for the community
-
-Examples of unacceptable behavior by participants include:
-
-- The use of sexual imagery and unwelcome sexual advances
-- Trolling, insulting/derogatory comments, and personal or political attacks
-- Public or private harassment
-- Publishing others' private information, such as a physical or electronic
- address, without explicit permission
-
-## Our Responsibilities
-
-Project maintainers are responsible for clarifying the standards of acceptable
-behavior and are expected to take appropriate and fair corrective action in
-response to any instances of unacceptable behavior.
-
-Project maintainers have the right and responsibility to remove, edit, or
-reject comments, commits, code, wiki edits, issues, and other contributions
-that are not aligned to this Code of Conduct, or to ban temporarily or
-permanently any contributor for other behaviors that they deem inappropriate,
-threatening, offensive, or harmful.
-
-## Scope
-
-This Code of Conduct applies both within project spaces and in public spaces
-when an individual is representing the project or its community. Examples of
-representing a project or community include using an official project e-mail
-address, posting via an official social media account, or acting as an appointed
-representative at an online or offline event. Representation of a project may be
-further defined and clarified by project maintainers.
-
-## Enforcement
-
-Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported by contacting the project team at jailman@schouten-lebbing.nl. All
-complaints will be reviewed and investigated and will result in a response that
-is deemed necessary and appropriate to the circumstances. The project team is
-obligated to maintain confidentiality with regard to the reporter of an incident.
-Further details of specific enforcement policies may be posted separately.
-
-Project maintainers who do not follow or enforce the Code of Conduct in good
-faith may face temporary or permanent repercussions as determined by other
-members of the project's leadership.
-
-## Attribution
-
-This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
-available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
-
-[homepage]: https://www.contributor-covenant.org
-
-For answers to common questions about this code of conduct, see
-https://www.contributor-covenant.org/faq
diff --git a/archive/jailman/docs/CONTRIBUTING.md b/archive/jailman/docs/CONTRIBUTING.md
deleted file mode 100644
index 549a4d124d1..00000000000
--- a/archive/jailman/docs/CONTRIBUTING.md
+++ /dev/null
@@ -1,98 +0,0 @@
-# Contribution and Review Guidelines
-
-This project welcomes any and all input, but we need to have a few quality guidelines. These guidelines will be examplained here, in this document.
-
-### GIT Guidelines
-
----
-
-#### New to GIT
-
-If you have never used git before, you can look up our general reference on our wiki.
-
-#### Git and You
-
-GIT is a fantastic system, but while using it we have a few guidelines to keep it fantastic for everyone.
-
-- Submit complete PR's.
-- Add [DNM] if you do not want your PR merged yet.
-- Always try and fill in the whole form, even for small PR's.
-- Don't close when a reviewer requests changes (just push the changes or ask for help).
-- Explain what you did in your PR.
-- Be thorough.
-- If you can add screenshots to clarify.
-- Always try to add "Fixes #000" (where 000 is the Issue your PR fixes)
-- found something you want to fix yourself? Please do make an issue too.
-
-### Structure Guidelines
-
----
-
-#### Naming scheme
-
-File and folder names are important and making mistakes in them may give conflicts an/or annoyance in the future. Remember, your garbage needs to be cleaned by someone sometime in the future! For that reason, we have a few guidelines in regards to naming files and folder.
-
-- Always start files and folders WITHOUT a Capital.
-
-#### Inclusion of files and folders
-
-Although GIT is quite friendly in what it accepts in terms of files and folder changes in a commit, a reviewer's or bugfixer's time is not unlimited. For that reason, we have a few specific guidelines in regards to the inclusion of files and folders in your PR.
-
-- Only include files you actually changed.
-- Try not to include multiple changes in one PR
-- Want to change the formatting of multiple files too? Make a separate PR.
-
-_Always include the following files when creating a new jail_
-
-- install.sh
-- update.sh
-- readme.md
-- config.yml
-
-### Code Guidelines
-
----
-
-#### Your code, your style, my review
-
-Here at jailman, we value people having their own style. But your code needs to be reviewable and editable by others too. For that reason, we have a few basic coding guidelines
-
-- **Always** explain regex in a comment within your code.
-- Write simple code and don't try to impress.
-- We will run (Basic) automated reformating of code once in a while.
-- Document your changes in your code and if need be, on the wiki.
-- All PR's should be able to pass our automated shellcheck.
-- It's okey to add shellcheck ignores, but only AFTER you checked the warning!
-
-#### jail requirements
-
-- Jails should always save user-specific data in a persistant location. Which is the location specified in the config.yml file under "config:", which is automatically mounted to every jail under /config. There should be no user specific data in the jail itself
-- Jails should not require the user to edit any config file themselves. All config changes should be automated
-- Jails should not use default passwords, the user should always be forced(!) to put credentials in config.yml manually
-
-### Review Guidelines
-
----
-
-Even us review gods need some guidelines once in a while.
-
-- Let people learn from their mistakes
-- Review instead of merging without comments
-- Abide by these guidelines in your review
-- Tests exist for a reason. Don't merge with test-failures
-
-### Todo vs Feature vs bug:
-
----
-
-Please take note of the difference between a TODO and Feature
-
-- Bug: An unexpected behavior of the script or a crash. Including, but not limited to, errors and warnings.
-- Todo: When you come across something that needs tweaking/adding during development, is not an unexpected behavior
-- Feature: When you, out of personal preference, want something added or changed.
-
-### That's it!
-
----
-
-Someone will come along and review the changes. If everything looks good then they will merge it with the main repo. If you need any help don't be afraid to ask in the discord channel: [https://discord.gg/tFcTpBp](https://discord.gg/tFcTpBp)
diff --git a/archive/jailman/docs/blueprints/General b/archive/jailman/docs/blueprints/General
deleted file mode 100644
index f12d6cb1dcc..00000000000
--- a/archive/jailman/docs/blueprints/General
+++ /dev/null
@@ -1,5 +0,0 @@
-## General Info
-
-Blueprints are the blueprint on which your created jails are going to be based.
-
-More info TBD
diff --git a/archive/jailman/docs/config options.md b/archive/jailman/docs/config options.md
deleted file mode 100644
index 43398172585..00000000000
--- a/archive/jailman/docs/config options.md
+++ /dev/null
@@ -1,51 +0,0 @@
-## Config Options
-
-There are a lot of possibly configuration options in config.yml.
-For jail specific config options, please see the wiki documentation for your specific jail. This page only list general and global config options, that are the same for every jail.
-
-## Global config options
-
-Global options apply to every jail. Use and change with caution.
-
-### dataset
-
-All config options under "dataset" change dataset creation and linking. The indentation and "dataset" flag are not optional.
-All Datasets are auto-created if they do not exist already, no need to worry about creating them!
-
-- config: The dataset that is going to contain the persistant data for every jail. For example: Nextcloud user files for nextcloud or the actual database for mariadb.
-- iocage: The dataset containing the iocage config. In FreeNAS often `poolname/iocage`
-- media: The dataset that is going to contain all media files for plex, Sonarr, Radarr etc. Such as movies and music. Music, Movie etc. sub-datasets are auto-created.
-- downloads: The dataset containging temporary download files. These are moved to media when finished. complete, incomplete etc. sub-datasets are auto-created.
-
-## jails
-
-All config options under "jails" change default jail settings that are the same for every created jail. The indentation and "jails" flag are not optional.
-
-- version: the current to-be-installed version for jails
-- pkgs: packages that are installed to all created jails
-
-## (hidden) Auto created datasets
-
-Some datasets are auto created and can not be changed from the config file. This is done to ease troubleshooting.
-
-- `media/music` created as a sub-dataset of media, contains music
-- `media/movies` created as a sub-dataset of media, contains movies
-- `media/shows` created as a sub-dataset of media, contains tv-shows
-- `downloads/complete` created as a sub-dataset of downloads, contains completed downloads
-- `downloads/incomplete` created as a sub-dataset of downloads, contains not-yet-completed downloads
-
-## General config options
-
-### Networking
-
-Please be aware that dhcp is not actively supported, many of the jails depend on having a fixed IP-adress in the config file.
-Some also depend on other jails having a fixed IP in the config file. Use of DHCP is on your own risk and might not work.
-
-- ip4_addr: To set a static IP (recommended), enter the desired ip address here. Leave blank (or remove the line) for DHCP.
-- gateway: Set the gateway IP for static IP setup. Leave blank (or remove the line) for DHCP.
-
-### Advanced
-
-- interfaces: Set the "interfaces" flag for iocage. Example: `vnet0:bridge0` (optional)
-- dhcp: Set to "on" to force DHCP (not required for DHCP, see above)
-- pkgs: Override the to-be-install packages for this jail (might break now or break updates)
diff --git a/archive/jailman/docs/index.md b/archive/jailman/docs/index.md
deleted file mode 100644
index 32a08016de6..00000000000
--- a/archive/jailman/docs/index.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Introduction
-
-Welcome to Jailam. An open source effort to create an easy management tool for Freenas Jails.
-
-As this project is in its early stages, this wiki will serve the purpose of providing a foundation and a almost (not) up-to-date scripting reference to the underlying structure of jailman.
diff --git a/archive/jailman/docs/migration/v1.1.x to v1.2.x.md b/archive/jailman/docs/migration/v1.1.x to v1.2.x.md
deleted file mode 100644
index 7b3dbd717c8..00000000000
--- a/archive/jailman/docs/migration/v1.1.x to v1.2.x.md
+++ /dev/null
@@ -1,56 +0,0 @@
-## v1.1.x to v1.2.x
-
-With v1.2 we made it possible to run multiple jails of the same type.
-This is done by seperating jails (your individual installs) from blueprints (our designs).
-
-Due to this change, the config file has been changed and thus you need to adapt your config file.
-
-### Jails
-
-All your jails need to be indented by 2 spaces under a main group "jails" like this:
-
-`jail:
- plex:
- blueprint: plex
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- beta: false`
-
-Also note:
-Where previously we used `plex: plex`, we can now just use `plex:`
-
-### Blueprints
-
-Every jail now requires a blueprint to be defined. for example:
-v1.1.x
-`
-
-plex: plex
-ip4_addr: 192.168.1.99/24
-gateway: 192.168.1.1
-plexpass: false
-`
-
-In v1.2.x becomes:
-`jail:
- plex:
- blueprint: plex
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- beta: false`
-
-### Plex
-
-Due to community feedback in v1.2.x "plexpass" has been renamed to "beta".
-
-### pkgs
-
-pkgs are removed from jail config in v1.2.x and are now part of the blueprint. This way we can keep them up-to-date for you.
-
-### Documentation
-
-All jails now have wiki documentation pages and all basic jail values have been documented
-
-### Other changes
-
-Some other minor changes in config file values have been done, please refer to the example document and compare your config to the example
diff --git a/archive/jailman/global.sh b/archive/jailman/global.sh
deleted file mode 100755
index 9d4b257ab8a..00000000000
--- a/archive/jailman/global.sh
+++ /dev/null
@@ -1,146 +0,0 @@
-#!/usr/local/bin/bash
-# shellcheck disable=SC1003
-
-# yml Parser function
-# Based on https://gist.github.com/pkuczynski/8665367
-#
-# This function is very picky and complex. Ignore with shellcheck for now.
-# shellcheck disable=SC2086,SC2155
-parse_yaml() {
- local prefix=${2}
- local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
- sed -ne "s|^\($s\)\($w\)$s:$s\"\(.*\)\"$s\$|\1$fs\2$fs\3|p" \
- -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" "${1}" |
- awk -F$fs '{
- indent = length($1)/2;
- vname[indent] = $2;
- for (i in vname) {if (i > indent) {delete vname[i]}}
- if (length($3) > 0) {
- vn=""; for (i=0; i /dev/null 2>&1
- git update-index -q --refresh > /dev/null 2>&1
- CHANGED=$(git diff --name-only "$1")
- if [ -n "$CHANGED" ];
- then
- echo "script requires update"
- git reset --hard > /dev/null 2>&1
- git pull > /dev/null 2>&1
- echo "script updated, please restart the script manually"
- exit 1
- else
- echo "script up-to-date"
- fi
-fi
-}
-
-jailcreate() {
-echo "Checking config..."
-blueprintpkgs="blueprint_${2}_pkgs"
-blueprintports="blueprint_${2}_ports"
-jailinterfaces="jail_${1}_interfaces"
-jailip4="jail_${1}_ip4_addr"
-jailgateway="jail_${1}_gateway"
-jaildhcp="jail_${1}_dhcp"
-setdhcp=${!jaildhcp}
-
-if [ -z "${!jailinterfaces}" ]; then
- jailinterfaces="vnet0:bridge0"
-else
- jailinterfaces=${!jailinterfaces}
-fi
-
-if [ -z "${setdhcp}" ] && [ -z "${!jailip4}" ] && [ -z "${!jailgateway}" ]; then
- echo 'no network settings specified in config.yml, defaulting to dhcp="on"'
- setdhcp="on"
-fi
-
-echo "Creating jail for $1"
-# shellcheck disable=SC2154
-pkgs="$(sed 's/[^[:space:]]\{1,\}/"&"/g;s/ /,/g' <<<"${global_jails_pkgs} ${!blueprintpkgs}")"
-echo '{"pkgs":['"${pkgs}"']}' > /tmp/pkg.json
-if [ "${setdhcp}" == "on" ]
-then
- # shellcheck disable=SC2154
- if ! iocage create -n "${1}" -p /tmp/pkg.json -r "${global_jails_version}" interfaces="${jailinterfaces}" dhcp="on" vnet="on" allow_raw_sockets="1" boot="on" -b
- then
- echo "Failed to create jail"
- exit 1
- fi
-else
- # shellcheck disable=SC2154
- if ! iocage create -n "${1}" -p /tmp/pkg.json -r "${global_jails_version}" interfaces="${jailinterfaces}" ip4_addr="vnet0|${!jailip4}" defaultrouter="${!jailgateway}" vnet="on" allow_raw_sockets="1" boot="on" -b
- then
- echo "Failed to create jail"
- exit 1
- fi
-fi
-
-rm /tmp/pkg.json
-echo "creating jail config directory"
-# shellcheck disable=SC2154
-createmount "${1}" "${global_dataset_config}" || exit 1
-createmount "${1}" "${global_dataset_config}"/"${1}" /config || exit 1
-
-# Create and Mount portsnap
-createmount "${1}" "${global_dataset_config}"/portsnap || exit 1
-createmount "${1}" "${global_dataset_config}"/portsnap/db /var/db/portsnap || exit 1
-createmount "${1}" "${global_dataset_config}"/portsnap/ports /usr/ports || exit 1
-if [ "${!blueprintports}" == "true" ]
-then
- echo "Mounting and fetching ports"
- iocage exec "${1}" "if [ -z /usr/ports ]; then portsnap fetch extract; else portsnap auto; fi"
-else
- echo "Ports not enabled for blueprint, skipping"
-fi
-
-echo "Jail creation completed for ${1}"
-
-}
-
-# $1 = jail name
-# $2 = Dataset
-# $3 = Target mountpoint
-# $4 = fstab prefernces
-createmount() {
- if [ -z "$2" ] ; then
- echo "ERROR: No Dataset specified to create and/or mount"
- exit 1
- else
- if [ ! -d "/mnt/$2" ]; then
- echo "Dataset does not exist... Creating... $2"
- zfs create "${2}" || exit 1
- else
- echo "Dataset already exists, skipping creation of $2"
- fi
-
- if [ -n "$1" ] && [ -n "$3" ]; then
- iocage exec "${1}" mkdir -p "${3}"
- if [ -n "${4}" ]; then
- iocage fstab -a "${1}" /mnt/"${2}" "${3}" "${4}" || exit 1
- else
- iocage fstab -a "${1}" /mnt/"${2}" "${3}" nullfs rw 0 0 || exit 1
- fi
- else
- echo "No Jail Name or Mount target specified, not mounting dataset"
- fi
-
- fi
-}
-export -f createmount
diff --git a/archive/jailman/jailman.sh b/archive/jailman/jailman.sh
deleted file mode 100755
index 63bea3ebb27..00000000000
--- a/archive/jailman/jailman.sh
+++ /dev/null
@@ -1,230 +0,0 @@
-#!/usr/local/bin/bash
-
-# Important defines:
-# shellcheck disable=SC2046
-SCRIPT_NAME=$(basename $(test -L "${BASH_SOURCE[0]}" && readlink "${BASH_SOURCE[0]}" || echo "${BASH_SOURCE[0]}"));
-SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd);
-export SCRIPT_NAME
-export SCRIPT_DIR
-
-echo "Working directory for jailman.sh is: ${SCRIPT_DIR}"
-
-#Includes
-# shellcheck source=global.sh
-source "${SCRIPT_DIR}/global.sh"
-
-# Check for root privileges
-if ! [ "$(id -u)" = 0 ]; then
- echo "This script must be run with root privileges"
- exit 1
-fi
-
-# Auto Update
-gitupdate $(git for-each-ref --format='%(upstream:short)' "$(git symbolic-ref -q HEAD)") || exit 1
-
-# If no option is given, point to the help menu
-if [ $# -eq 0 ]
-then
-echo "Missing options!"
- echo "(run $0 -h for help)"
- echo ""
- exit 0
-fi
-
-# Go through the options and put the jails requested in an array
-unset -v sub
-while getopts ":i:r:u:d:g:h" opt
- do
- #Shellcheck on wordsplitting will be disabled. Wordsplitting can't happen, because it's already split using OPTIND.
- case $opt in
- i ) installjails=("$OPTARG")
- # shellcheck disable=SC2046
- until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
- # shellcheck disable=SC2207
- installjails+=($(eval "echo \${$OPTIND}"))
- OPTIND=$((OPTIND + 1))
- done
- ;;
- r ) redojails=("$OPTARG")
- # shellcheck disable=SC2046
- until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
- # shellcheck disable=SC2207
- redojails+=($(eval "echo \${$OPTIND}"))
- OPTIND=$((OPTIND + 1))
- done
- ;;
- u ) updatejails=("$OPTARG")
- # shellcheck disable=SC2046
- until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
- # shellcheck disable=SC2207
- updatejails+=($(eval "echo \${$OPTIND}"))
- OPTIND=$((OPTIND + 1))
- done
- ;;
- d ) destroyjails=("$OPTARG")
- # shellcheck disable=SC2046
- until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
- # shellcheck disable=SC2207
- destroyjails+=($(eval "echo \${$OPTIND}"))
- OPTIND=$((OPTIND + 1))
- done
- ;;
- g ) upgradejails=("$OPTARG")
- # shellcheck disable=SC2046
- until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
- # shellcheck disable=SC2207
- upgradejails+=($(eval "echo \${$OPTIND}"))
- OPTIND=$((OPTIND + 1))
- done
- ;;
- h )
- echo "Usage:"
- echo "$0 -i "
- echo "$0 -r "
- echo "$0 -u "
- echo "$0 -d "
- echo "$0 -g "
- echo ""
- echo " -i to install jails, listed by name, space seperated like this: jackett plex sonarr"
- echo " -r to reinstall jails, listed by name, space seperated like this: jackett plex sonarr"
- echo " -u to update jails, listed by name, space seperated like this: jackett plex sonarr"
- echo " -d to destroy jails, listed by name, space seperated like this: jackett plex sonarrt"
- echo " -g to upgrade jails, listed by name, space seperated like this: jackett plex sonarr"
- echo " -h help (this output)"
- exit 0
- ;;
- ? ) echo "Error: Invalid option was specified -$OPTARG"
- exit 0
- ;;
- esac
-done
-
-# auto detect iocage install location
-global_dataset_iocage=$(zfs get -H -o value mountpoint $(iocage get -p)/iocage)
-global_dataset_iocage=${global_dataset_iocage#/mnt/}
-export global_dataset_iocage
-
-# Parse the Config YAML
-# shellcheck disable=SC2046
-for configpath in "${SCRIPT_DIR}"/blueprints/*/config.yml; do ! eval $(parse_yaml "${configpath}"); done
-eval "$(parse_yaml config.yml)"
-
-# shellcheck disable=SC2154
-if [ "${global_version}" != "1.2" ]; then
- echo "You are using old config.yml synatx."
- echo "Please check the wiki for required changes"
- exit 1
-fi
-
-# Check and Execute requested jail destructions
-if [ ${#destroyjails[@]} -eq 0 ]; then
- echo "No jails to destroy"
-else
- # shellcheck disable=SC2124,SC2145
- echo "jails to destroy ${destroyjails[@]}"
- for jail in "${destroyjails[@]}"
- do
- echo "destroying $jail"
- iocage destroy -f "${jail}"
- done
-
-fi
-
-# Check and Execute requested jail Installs
-if [ ${#installjails[@]} -eq 0 ]; then
- echo "No jails to install"
-else
- # shellcheck disable=SC2124,SC2145
- echo "jails to install ${installjails[@]}"
- for jail in "${installjails[@]}"
- do
- blueprint=jail_${jail}_blueprint
- if [ -z "${!blueprint}" ]
- then
- echo "Config for ${jail} in config.yml incorrect. Please check your config."
- exit 1
- elif [ -f "${SCRIPT_DIR}/blueprints/${!blueprint}/install.sh" ]
- then
- echo "Installing $jail"
- jailcreate "${jail}" "${!blueprint}" && "${SCRIPT_DIR}"/blueprints/"${!blueprint}"/install.sh "${jail}"
- else
- echo "Missing blueprint ${!blueprint} for $jail in ${SCRIPT_DIR}/blueprints/${!blueprint}/install.sh"
- exit 1
- fi
- done
-fi
-
-# Check and Execute requested jail Reinstalls
-if [ ${#redojails[@]} -eq 0 ]; then
- echo "No jails to ReInstall"
-else
- # shellcheck disable=SC2124,SC2145
- echo "jails to reinstall ${redojails[@]}"
- for jail in "${redojails[@]}"
- do
- blueprint=jail_${jail}_blueprint
- if [ -z "${!blueprint}" ]
- then
- echo "Config for ${jail} in config.yml incorrect. Please check your config."
- exit 1
- elif [ -f "${SCRIPT_DIR}/blueprints/${!blueprint}/install.sh" ]
- then
- echo "Reinstalling $jail"
- iocage destroy -f "${jail}" && jailcreate "${jail}" "${!blueprint}" && "${SCRIPT_DIR}"/blueprints/"${!blueprint}"/install.sh "${jail}"
- else
- echo "Missing blueprint ${!blueprint} for $jail in ${SCRIPT_DIR}/blueprints/${!blueprint}/install.sh"
- exit 1
- fi
- done
-fi
-
-
-# Check and Execute requested jail Updates
-if [ ${#updatejails[@]} -eq 0 ]; then
- echo "No jails to Update"
-else
- # shellcheck disable=SC2124,SC2145
- echo "jails to update ${updatejails[@]}"
- for jail in "${updatejails[@]}"
- do
- blueprint=jail_${jail}_blueprint
- if [ -z "${!blueprint}" ]
- then
- echo "Config for ${jail} in config.yml incorrect. Please check your config."
- exit 1
- elif [ -f "${SCRIPT_DIR}/blueprints/${!blueprint}/update.sh" ]
- then
- echo "Updating $jail"
- iocage update "${jail}"
- iocage exec "${jail}" "pkg update && pkg upgrade -y" && "${SCRIPT_DIR}"/blueprints/"${!blueprint}"/update.sh "${jail}"
- iocage restart "${jail}"
- iocage start "${jail}"
- else
- echo "Missing blueprint ${!blueprint} for $jail in ${SCRIPT_DIR}/blueprints/${!blueprint}/install.sh"
- exit 1
- fi
- done
-fi
-
-# Check and Execute requested jail Upgrades
-if [ ${#upgradejails[@]} -eq 0 ]; then
- echo "No jails to Upgrade"
-else
- # shellcheck disable=SC2124,SC2145
- echo "jails to update ${upgradejails[@]}"
- for jail in "${upgradejails[@]}"
- do
- blueprint=jail_${jail}_blueprint
- if [ -z "${!blueprint}" ]
- then
- echo "Config for ${jail} in config.yml incorrect. Please check your config."
- exit 1
- elif [ -f "${SCRIPT_DIR}/blueprints/${!blueprint}/update.sh" ]
- then
- echo "Currently Upgrading is not yet included in this script."
- else
- echo "Currently Upgrading is not yet included in this script."
- exit 1
- fi
- done
-fi
diff --git a/archive/jailman/mkdocs.yml b/archive/jailman/mkdocs.yml
deleted file mode 100644
index 2b82a74eb33..00000000000
--- a/archive/jailman/mkdocs.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-# Project Information
-site_name: JailMan
-site_description: "Project Design and Documentation for development"
-site_author: "Ornias1993"
-site_url: "https://ornias1993.github.io/jailman/"
-
-# Repository
-repo_name: "ornias1993/jailman"
-repo_url: "https://github.com/Ornias1993/jailman/"
-edit_uri: "edit/dev/docs/"
-
-theme:
- name: "material"
- features:
- - tabs
- language: "en"
-
-markdown_extensions:
- - admonition
- - codehilite:
- guess_lang: false
- - toc:
- permalink: true
diff --git a/archive/jailman/website/CNAME b/archive/jailman/website/CNAME
deleted file mode 100644
index f6ac5079213..00000000000
--- a/archive/jailman/website/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-jailmanager.org
\ No newline at end of file
diff --git a/archive/jailman/website/_config.yml b/archive/jailman/website/_config.yml
deleted file mode 100644
index 3190c1e94c4..00000000000
--- a/archive/jailman/website/_config.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-theme: jekyll-theme-cayman
-title: Jail Manager
-description: The home of JailMan
-show_downloads: true
-github:
- zip_url: https://github.com/jailmanager/jailman/zipball/master
- tar_url: https://github.com/jailmanager/jailman/tarball/master
\ No newline at end of file
diff --git a/archive/jailman/website/index.md b/archive/jailman/website/index.md
deleted file mode 100644
index 1ec9513da46..00000000000
--- a/archive/jailman/website/index.md
+++ /dev/null
@@ -1,26 +0,0 @@
-## Welcome to Jail Manager
-
-Jail Manager is the community that maintains JailMan.
-
-### JailMan
-JailMan is a one-line iocage jail management and deployment tool for FreeNAS and FreeBSD.
-If you are interested in using JailMan, please visit us on github [github](https://github.com/jailmanager/jailman/)
-
-### Supported operating systems
-
-While we always aim to improve, we have a limited capacity to support older or newer operating systems. Our focus is the current version of FreeNAS and, the future, TrueNAS CORE.
-That being said: We do look forward to support more operating systems like FreeBSD and Linux.
-
-### Roadmap
-
-While we can't make promises due to the nature of opensource development, we aim to release frequent bugfixes aka minor releases (1.2.x releases) and less frequent major releases that will also change the way you interact with JailMan.
-
-Our current roadmap is as follows:
-
-- Next Minor release (1.2.3): Before 15-07-2020
-- Next Major release (1.3.0): Before 01-09-2020
-
-
-### Support or Contact
-
-Having trouble with JailMan? Check out our [Wiki](https://wiki.jailmanager.org) or [github](https://github.com/jailmanager/jailman/) and we’ll help you sort it out.
diff --git a/archive/jailman/wiki/.github/workflows/deploy.yml b/archive/jailman/wiki/.github/workflows/deploy.yml
deleted file mode 100644
index dda117691ca..00000000000
--- a/archive/jailman/wiki/.github/workflows/deploy.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-name: Publish Wiki via GitHub Pages
-on:
- push:
- branches:
- - master
-
-jobs:
- build:
- name: Deploy Wiki
- runs-on: ubuntu-latest
- steps:
- - name: Checkout master
- uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # v1
- with:
- ref: "master"
- - name: Deploy docs
- uses: mhausenblas/mkdocs-deploy-gh-pages@master
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/archive/jailman/wiki/.gitignore b/archive/jailman/wiki/.gitignore
deleted file mode 100644
index 6b544e77282..00000000000
--- a/archive/jailman/wiki/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/config.yml
-/tmp/
diff --git a/archive/jailman/wiki/CNAME b/archive/jailman/wiki/CNAME
deleted file mode 100644
index fb580e6bf24..00000000000
--- a/archive/jailman/wiki/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-wiki2.jailmanager.org
diff --git a/archive/jailman/wiki/LICENSE b/archive/jailman/wiki/LICENSE
deleted file mode 100644
index 3c91742b82e..00000000000
--- a/archive/jailman/wiki/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-BSD 2-Clause License
-
-Copyright (c) 2020, Kjeld Schouten-Lebbing
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/archive/jailman/wiki/LICENSE.BSD2 b/archive/jailman/wiki/LICENSE.BSD2
deleted file mode 100644
index c739456913e..00000000000
--- a/archive/jailman/wiki/LICENSE.BSD2
+++ /dev/null
@@ -1,25 +0,0 @@
-BSD 2-Clause License
-
-Copyright (c) 2019, Kjeld Schouten-Lebbing
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/archive/jailman/wiki/LICENSE.GPLV2 b/archive/jailman/wiki/LICENSE.GPLV2
deleted file mode 100644
index d159169d105..00000000000
--- a/archive/jailman/wiki/LICENSE.GPLV2
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- , 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/archive/jailman/wiki/content/CNAME b/archive/jailman/wiki/content/CNAME
deleted file mode 100644
index fb580e6bf24..00000000000
--- a/archive/jailman/wiki/content/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-wiki2.jailmanager.org
diff --git a/archive/jailman/wiki/content/CODE_OF_CONDUCT.md b/archive/jailman/wiki/content/CODE_OF_CONDUCT.md
deleted file mode 100644
index fe93daa5ec9..00000000000
--- a/archive/jailman/wiki/content/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# Code of Conduct
-
-## Our Pledge
-
-In the interest of fostering an open and welcoming environment, we as
-contributors and maintainers pledge to making participation in our project and
-our community a harassment-free experience for everyone, regardless of age, body
-size, disability, ethnicity, sex characteristics, gender, level of experience,
-education, socio-economic status, nationality, personal appearance, race,
-religion, or sexual identity and orientation.
-
-## Our Standards
-
-Examples of behavior that contributes to creating a positive environment
-include:
-
-- Being respectful of differing viewpoints and experiences
-- Gracefully accepting constructive criticism
-- Focusing on what is best for the community
-
-Examples of unacceptable behavior by participants include:
-
-- The use of sexual imagery and unwelcome sexual advances
-- Trolling, insulting/derogatory comments, and personal or political attacks
-- Public or private harassment
-- Publishing others' private information, such as a physical or electronic
- address, without explicit permission
-
-## Our Responsibilities
-
-Project maintainers are responsible for clarifying the standards of acceptable
-behavior and are expected to take appropriate and fair corrective action in
-response to any instances of unacceptable behavior.
-
-Project maintainers have the right and responsibility to remove, edit, or
-reject comments, commits, code, wiki edits, issues, and other contributions
-that are not aligned to this Code of Conduct, or to ban temporarily or
-permanently any contributor for other behaviors that they deem inappropriate,
-threatening, offensive, or harmful.
-
-## Scope
-
-This Code of Conduct applies both within project spaces and in public spaces
-when an individual is representing the project or its community. Examples of
-representing a project or community include using an official project e-mail
-address, posting via an official social media account, or acting as an appointed
-representative at an online or offline event. Representation of a project may be
-further defined and clarified by project maintainers.
-
-## Enforcement
-
-Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported by contacting the project team at jailman@schouten-lebbing.nl. All
-complaints will be reviewed and investigated and will result in a response that
-is deemed necessary and appropriate to the circumstances. The project team is
-obligated to maintain confidentiality with regard to the reporter of an incident.
-Further details of specific enforcement policies may be posted separately.
-
-Project maintainers who do not follow or enforce the Code of Conduct in good
-faith may face temporary or permanent repercussions as determined by other
-members of the project's leadership.
-
-## Attribution
-
-This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
-available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
-
-[homepage]: https://www.contributor-covenant.org
-
-For answers to common questions about this code of conduct, see
-https://www.contributor-covenant.org/faq
diff --git a/archive/jailman/wiki/content/CONTRIBUTING.md b/archive/jailman/wiki/content/CONTRIBUTING.md
deleted file mode 100644
index 3b3ddb8f0ca..00000000000
--- a/archive/jailman/wiki/content/CONTRIBUTING.md
+++ /dev/null
@@ -1,113 +0,0 @@
-# Contribution and Review Guidelines
-
-This project welcomes any and all input, but we need to have a few quality guidelines. These guidelines will be examplained here, in this document.
-
-### GIT Guidelines
-
----
-
-#### New to GIT
-
-If you have never used git before, you can look up our general reference on our wiki.
-
-#### Git and You
-
-GIT is a fantastic system, but while using it we have a few guidelines to keep it fantastic for everyone.
-
-- Submit complete PR's.
-- Add [DNM] if you do not want your PR merged yet.
-- Always try and fill in the whole form, even for small PR's.
-- Don't close when a reviewer requests changes (just push the changes or ask for help).
-- Explain what you did in your PR.
-- Be thorough.
-- If you can add screenshots to clarify.
-- Always try to add "Fixes #000" (where 000 is the Issue your PR fixes)
-- found something you want to fix yourself? Please do make an issue too.
-
-### Structure Guidelines
-
----
-
-#### Naming scheme
-
-File and folder names are important and making mistakes in them may give conflicts an/or annoyance in the future. Remember, your garbage needs to be cleaned by someone sometime in the future! For that reason, we have a few guidelines in regards to naming files and folder.
-
-- Always start files and folders WITHOUT a Capital.
-
-#### Inclusion of files and folders
-
-Although GIT is quite friendly in what it accepts in terms of files and folder changes in a commit, a reviewer's or bugfixer's time is not unlimited. For that reason, we have a few specific guidelines in regards to the inclusion of files and folders in your PR.
-
-- Only include files you actually changed.
-- Try not to include multiple changes in one PR
-- Want to change the formatting of multiple files too? Make a separate PR.
-
-_Always include the following files when creating a new jail_
-
-- install.sh
-- update.sh
-- readme.md
-- config.yml
-
-### Code Guidelines
-
----
-
-#### Your code, your style, my review
-
-Here at jailman, we value people having their own style. But your code needs to be reviewable and editable by others too. For that reason, we have a few basic coding guidelines
-
-- **Always** explain regex in a comment within your code.
-- Write simple code and don't try to impress.
-- We will run (Basic) automated reformating of code once in a while.
-- Document your changes in your code and if need be, on the wiki.
-- All PR's should be able to pass our automated shellcheck.
-- It's okey to add shellcheck ignores, but only AFTER you checked the warning!
-
-#### jail requirements
-
-- Jails should always save user-specific data in a persistant location. Which is the location specified in the config.yml file under "config:", which is automatically mounted to every jail under /config. There should be no user specific data in the jail itself
-- Jails should not require the user to edit any config file themselves. All config changes should be automated
-- Jails should not use default passwords, the user should always be forced(!) to put credentials in config.yml manually
-
-#### Variable style
-
-Here at JailMan we use a consistant style for variables. We also automated the process of loading the variables from the config file into your plugin, therefore you need to list all variables and required variables into the config.yml file in your plugin folder.
-
-The following variables do not need to be included in your plugin config.yml, because they are always loaded:
-
-ip4_addr
-host_name
-gateway
-
-The style requirements for your plugin variables are as follows:
-Simple variables: clear names, no references to other jails. (ex. `admin_token` )
-Referencing another jail: prefix `link_` suffix a clear description of the jail you are linking. Preferably a plugin name. (ex. `link_mariadb` )
-For referencing settings for specific applications or other plugins: prefix: `$pluginname_` or `$application_` where $plugin and $application are the names of the plugin/application the value is used for. (ex. `mariadb_database`)
-
-### Review Guidelines
-
----
-
-Even us review gods need some guidelines once in a while.
-
-- Let people learn from their mistakes
-- Review instead of merging without comments
-- Abide by these guidelines in your review
-- Tests exist for a reason. Don't merge with test-failures
-
-### Todo vs Feature vs bug:
-
----
-
-Please take note of the difference between a TODO and Feature
-
-- Bug: An unexpected behavior of the script or a crash. Including, but not limited to, errors and warnings.
-- Todo: When you come across something that needs tweaking/adding during development, is not an unexpected behavior
-- Feature: When you, out of personal preference, want something added or changed.
-
-### That's it!
-
----
-
-Someone will come along and review the changes. If everything looks good then they will merge it with the main repo. If you need any help don't be afraid to ask in the discord channel: [https://discord.gg/tFcTpBp](https://discord.gg/tFcTpBp)
diff --git a/archive/jailman/wiki/content/SECURITY.md b/archive/jailman/wiki/content/SECURITY.md
deleted file mode 100644
index 361a7bde5b1..00000000000
--- a/archive/jailman/wiki/content/SECURITY.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Security Policy
-
-## Supported Versions
-
-| Version | TrueNAS version | Supported with updates |
-| ------- | --------------- | ---------------------- |
-| 1.3.0 | 12.0 | NOT RELEASED YET |
-| 1.2.x | 11.3U2-3 | :white_check_mark: |
-| 1.1.x | 11.3U1-2 | :x: |
-| 1.0.x | 11.3U1 | :x: |
-
-## Reporting a Vulnerability
-
-If you find any security issue, please email the project maintainer.
-
-Currently the Project Maintainer is:
-[Ornias1993](https://github.com/Ornias1993)
diff --git a/archive/jailman/wiki/content/SUPPORT.md b/archive/jailman/wiki/content/SUPPORT.md
deleted file mode 100644
index e69de29bb2d..00000000000
diff --git a/archive/jailman/wiki/content/config options.md b/archive/jailman/wiki/content/config options.md
deleted file mode 100644
index ff6d3245a98..00000000000
--- a/archive/jailman/wiki/content/config options.md
+++ /dev/null
@@ -1,52 +0,0 @@
-## Config Options
-
-There are a lot of possibly configuration options in config.yml.
-For jail specific config options, please see the wiki documentation for your specific jail. This page only list general and global config options, that are the same for every jail.
-
-## Global config options
-
-Global options apply to every jail. Use and change with caution.
-
-### dataset
-
-All config options under "dataset" change dataset creation and linking. The indentation and "dataset" flag are not optional.
-All Datasets are auto-created if they do not exist already, no need to worry about creating them!
-
-- config: The dataset that is going to contain the persistant data for every jail. For example: Nextcloud user files for nextcloud or the actual database for mariadb.
-- iocage: The dataset containing the iocage config. In FreeNAS often `poolname/iocage`
-- media: The dataset that is going to contain all media files for plex, Sonarr, Radarr etc. Such as movies and music. Music, Movie etc. sub-datasets are auto-created.
-- downloads: The dataset containging temporary download files. These are moved to media when finished. complete, incomplete etc. sub-datasets are auto-created.
-
-## jails
-
-All config options under "jails" change default jail settings that are the same for every created jail. The indentation and "jails" flag are not optional.
-
-- version: the current to-be-installed version for jails
-- pkgs: packages that are installed to all created jails
-
-## (hidden) Auto created datasets
-
-Some datasets are auto created and can not be changed from the config file. This is done to ease troubleshooting.
-
-- `media/music` created as a sub-dataset of media, contains music
-- `media/movies` created as a sub-dataset of media, contains movies
-- `media/shows` created as a sub-dataset of media, contains tv-shows
-- `downloads/complete` created as a sub-dataset of downloads, contains completed downloads
-- `downloads/incomplete` created as a sub-dataset of downloads, contains not-yet-completed downloads
-
-## General config options
-
-### Networking
-
-Please be aware that dhcp is not actively supported, many of the jails depend on having a fixed IP-adress in the config file.
-Some also depend on other jails having a fixed IP in the config file. Use of DHCP is on your own risk and might not work.
-
-- ip4_addr: To set a static IP (recommended), enter the desired ip address here. Leave blank (or remove the line) for DHCP.
-- gateway: Set the gateway IP for static IP setup. Leave blank (or remove the line) for DHCP.
-
-### Advanced
-
-- interfaces: Set the "interfaces" flag for iocage. Example: `vnet0:bridge0` (optional)
-- dhcp: Set to "on" to force DHCP (not required for DHCP, see above)
-- pkgs: Override the to-be-install packages for this jail (might break now or break updates)
-- custom_iocage: Adds additional custom options to iocage create (NOT actively supported, use on your own risk)
diff --git a/archive/jailman/wiki/content/development/functions.md b/archive/jailman/wiki/content/development/functions.md
deleted file mode 100644
index 9ad4069155d..00000000000
--- a/archive/jailman/wiki/content/development/functions.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Custom Functions
-
-## Intro
-
-With Jailman we have a number of functions that are custom. This document lists them and explains their use. Currently all custom functions are inculded in ./includes/global.sh
-
-## parse_yaml
-
-This functions parses the yml config files. It does not support lists however and we highly advice not using indentations other than 2 spaces either.
-It's only input is a yml file and it should be called as the argument of an eval statement.
-
-## gitupdate
-
-This function triggers an update based on the branch it is given.
-Currently only called in jailman.sh and it is fed the remote/branch combo it is currently on.
-
-## jailcreate
-
-This function creates the actual jail based on a plugin.
-It takes the jail name, looks up the plugin and proceeds accordingly.
-It also creates things like basic mount points and such. while also checking if all required vars are filled.
-
-Currently only used in jailman.sh
-
-## initplugin
-
-This function turns all config.yml variables for the jail inputed as $1 into local variables. This is not required (as variables are also available as `${!jail\_$1_varname}`), but makes it easier for less experienced plugin creators to start working with Jailman
-It takes only the Jailname as input.
-
-## exitplugin
-
-This script does the "success" processing for an installation. It takes the name of the jail and a message (preferable a connection instruction), creates the "INSTALLED" file, does the last checks and outputs the successmessages
-No additional scripting besides `echo`'s should be done after executing this script.
-
-## createmount
-
-This function creates a dataset and mounts said dataset to a specific folder in a jail, while also creating required subfolders if needed.
-It's easier to use and update than mounting folders manually, so it's the only allowed way to do so, unless very specific config is required (such as database datasets)
-It has the following input options:
-
-# $1 = jail name
-
-# $2 = Dataset
-
-# $3 = Target mountpoint
-
-# $4 = fstab prefernces
diff --git a/archive/jailman/wiki/content/development/linked_configs.md b/archive/jailman/wiki/content/development/linked_configs.md
deleted file mode 100644
index 9683cd0ceb7..00000000000
--- a/archive/jailman/wiki/content/development/linked_configs.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Linking Jail Configs
-
-## Intro
-
-To keep things simple, you can easily link jail configs together, for example you can make the settings of your MariaDB jail accessable to your nextcloud jail.
-This can be done using a variable with the name: `link_$Name`, where $Name is just a description and the value in config.yml would be the actual jail to connect to.
-
-For example:
-`link_testjail: thisismytestjail`
-
-Would link "thisismytestjail" to your current jail.
-
-## using linked jails
-
-Once setup one can reach all the variables of the linked jail using the following syntax:
-`link_$Name_$variable`
-
-For example if we want the ipv4 address of the jail we linked earlier, during the install of another jail, we would do:
-`${link_testjail_ip4_addr}`
diff --git a/archive/jailman/wiki/content/index.md b/archive/jailman/wiki/content/index.md
deleted file mode 100644
index 3391afacd39..00000000000
--- a/archive/jailman/wiki/content/index.md
+++ /dev/null
@@ -1,136 +0,0 @@
-# Introduction
-
-**Jailman is a collection of shell scripts designed to make it easier to install all sorts of iocage Jails on FreeNAS.**
-
----
-
-[](https://github.com/jailmanager/jailman/commits/dev) [](https://github.com/jailmanager/jailman/releases/latest) [](https://github.com/jailmanager/jailman/blob/master/docs/LICENSE.GPLV2) [](https://github.com/jailmanager/jailman/blob/master/docs/LICENSE.BSD2)
-
-There are a lot of great scripts out there to create all sorts of custom jails on FreeNAS. Sadly enough, they all take their own approach to configuration, which lead to a lot of time wasted configuring all sorts of different scripts.
-
-We do not aim to be some sort of XKCD like "solution to replace all solutions", but aim to simply improve, iterate and integrate the great work others have already put forward.
-
-The goal of this project is to be able to install, update, reinstall, upgrade and delete most of your services by just running a single command using a single config file. While doing this we aim for a "docker like" scenario, where the jail is completely disposable and all configuration is saved outside of the jail.
-
-## Getting started
-
-### Installing
-
-- Get into FreeNAS using the in-gui console or SSH.
- Run the following commands to install jailman:
-- `git clone https://github.com/jailmanager/jailman.git`
-- `cd jailman`
-- `cp config.yml.example config.yml`
-- edit config.yml to reflect your personal settings (optional, see "use")
-- Run one of the commands under "How-To Use"
-
-### Updating
-
-This script includes an autoupdate feature which checks if changes to the script has been posted to github.
-
-## How-To Use
-
-Replace $jailname with the name of the jail you want to install.
-For supported jails, please see this readme or config.yml.example
-
-- First: CD into the directory you downloaded jailman into (see above)
- example:
- `cd /root/jailman`
-
-- Install:
- `./jailman.sh -i $jailname`
- Example:
- `./jailman.sh -i sonarr`
-
-- ReInstall:
- `./jailman.sh -r $jailname`
- Example:
- `./jailman.sh -r sonarr`
-
-- Update:
- `./jailman.sh -u $jailname`
- Example:
- `./jailman.sh -u sonarr`
-
-- Destroy
- `./jailman.sh -d $jailname`
- Example:
- `./jailman.sh -d sonarr`
-
-You can also do multiple jails in one pass:
-Example:
-`jailman.sh -i sonarr radarr lidarr`
-
-This installs the jail, creates the config dataset if needed, installs all packages and sets them up for you.
-Only thing you need to do is do the setup of the packages in their respective GUI.
-All settings for the applications inside the jails are persistent across reinstalls, so don't worry reinstalling!
-
-config.yml.example includes basic configuration for all jails.
-Basic means: The same setup as a FreeNAS plugin would've, DHCP on bridge0.
-
-### Currently Supported Services
-
-#### General
-
-- organizr
-- py-kms
-- nextcloud (currently broken, fix ready for 1.3.0)
-- bitwarden
-- unifi controller
-
-#### Backend
-
-- mariadb
-- influxdb
-
-#### Downloads
-
-- transmission
-- jackett
-
-#### Media
-
-- plex
-- tautulli
-- sonarr
-- radarr
-- lidarr
-
-## Get involved
-
-### Preparing your own copy of JailMan
-
-Getting involved with JailMan and creating your own Jails, is really simple although experience with Bash, BSD and iocage is highly recommended.
-
-- Fork the JailMan Repository and clone your own fork to disk.
-- Create a new branch, starting from the dev branch (with all current development changes)
-- Open Jailman.sh and `BRANCH="dev"`into your own branch.
-
-### Making changes
-
-To add a jail, you need 4 things:
-
-- A jailfolder under jails/
-- an install script in the jail folder, named `install.sh`
-- an update script in the jail folder, named `update.sh`
-- an entry in `config.yml` with the name of your jail
-
-All jails created by JailMan start with their own persistant data folder in a seperate dataset, mounted under `/config`.
-You can safely use this, or create additional datasets and mount those.
-
-To make your experience making changes to Jailman as easy as possible, we already made some convenience functions in global.sh, those are available to your jail install and update scripts from the start!
-
-But above all: Have fun building it!
-
-## LICENCE
-
-This work is dual licenced under GPLv2 and BSD-2 clause
-
-### Sub-Licences
-
-Some sub-modules available under "jails" might be licenced under a different licence.
-Please be aware of this and take note of any LICENCE files signaling a differently licenced sub-module.
-
----
-
- 
diff --git a/archive/jailman/wiki/content/migration/v1.1.x to v1.2.x.md b/archive/jailman/wiki/content/migration/v1.1.x to v1.2.x.md
deleted file mode 100644
index a9135681fe1..00000000000
--- a/archive/jailman/wiki/content/migration/v1.1.x to v1.2.x.md
+++ /dev/null
@@ -1,56 +0,0 @@
-## v1.1.x to v1.2.x
-
-With v1.2 we made it possible to run multiple jails of the same type.
-This is done by seperating jails (your individual installs) from plugins (our designs).
-
-Due to this change, the config file has been changed and thus you need to adapt your config file.
-
-### Jails
-
-All your jails need to be indented by 2 spaces under a main group "jails" like this:
-
-`jail:
- plex:
- plugin: plex
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- beta: false`
-
-Also note:
-Where previously we used `plex: plex`, we can now just use `plex:`
-
-### plugins
-
-Every jail now requires a plugin to be defined. for example:
-v1.1.x
-`
-
-plex: plex
-ip4_addr: 192.168.1.99/24
-gateway: 192.168.1.1
-plexpass: false
-`
-
-In v1.2.x becomes:
-`jail:
- plex:
- plugin: plex
- ip4_addr: 192.168.1.99/24
- gateway: 192.168.1.1
- beta: false`
-
-### Plex
-
-Due to community feedback in v1.2.x "plexpass" has been renamed to "beta".
-
-### pkgs
-
-pkgs are removed from jail config in v1.2.x and are now part of the plugin. This way we can keep them up-to-date for you.
-
-### Documentation
-
-All jails now have wiki documentation pages and all basic jail values have been documented
-
-### Other changes
-
-Some other minor changes in config file values have been done, please refer to the example document and compare your config to the example
diff --git a/archive/jailman/wiki/content/migration/v1.2.x to v1.3.x.md b/archive/jailman/wiki/content/migration/v1.2.x to v1.3.x.md
deleted file mode 100644
index 178ccd097e0..00000000000
--- a/archive/jailman/wiki/content/migration/v1.2.x to v1.3.x.md
+++ /dev/null
@@ -1,59 +0,0 @@
-# v1.2.x to v1.3.x
-
-With v1.3.0 all our code has been completely redesigned and rewriten.
-While we tried to minimize the effects on the user, there are some consequences.
-
-Please read this document completely before migrating.
-We are **NOT** responsible if you ignore anything from this document.
-
-### Plugin backend
-
-With v1.3.0 we started to use plugins as a backend for jailman.
-Besides the plugins now being visable in the TrueNAS UI and the renaming of "blueprints" to "plugins" this should not have any significant changes to the user experience.
-
-However: This means all our previous jails are now not compatible with jailman anymore. A reinstall is required.
-As all our jails save their data in persistent storage, it would not have any side effects to just reinstall all your jails.
-You can still use jailman.sh -d $jail or jailman.sh -r $jail to remove or reinstall the old jails.
-
-However, please always make sure you create a snapshot before doing any possible destructive operations!
-
-#### Persistence warning on Organizr
-
-Due to bad design choices from the organizr team, we can't be 100% sure our current setup is persistent.
-While we do our best, we currently can't give guarantees about it
-
-### Different reinstall detection.
-
-With v1.3.0 we simplyfied reinstall detection.
-If a install finishes alright, it now adds a file called "INSTALLED" to the persistent config directory (by default: /apps/$jailname). As long as this file is present it will allways try to reinstall.
-As your current persistent config directories do not contain this file, all reinstalls will fail.
-You can easily fix this by manually add a filled named `INSTALLED` to all the persistent config directories.
-
-### SSL
-
-With v1.3.0 we centralised all SSL to a traefik proxy. Traefik is a great utility to keep track of all SSL certificates and guarantees a more solid experience.
-This also means we do **NOT** offer any SSL-setup ourselves anymore, but in return we fully integrated traefik into the config.yml file... so you can generate your certificates even faster than before.
-
-We have a limited amount of developers and by using traefik, we can focus on things that mater: Stability and functionality, instead of working custom SSL config for every jail.
-
-### Config file format
-
-Because we simplified the internal config file structure, the config.yml structure has been simplified.
-Some options have been removed and the "jail" main category has been removed.
-
-An example what this means:
-
-```
-jail:
- sonarrjail:
- blueprint: sonarr
-```
-
-Will become:
-
-```
-sonarrjail:
- plugin: sonarr
-```
-
-Where there will be NO spaces in front of the jailname anymore.
diff --git a/archive/jailman/wiki/content/plugins/General b/archive/jailman/wiki/content/plugins/General
deleted file mode 100644
index f12d6cb1dcc..00000000000
--- a/archive/jailman/wiki/content/plugins/General
+++ /dev/null
@@ -1,5 +0,0 @@
-## General Info
-
-Blueprints are the blueprint on which your created jails are going to be based.
-
-More info TBD
diff --git a/archive/jailman/wiki/content/plugins/bazarr.md b/archive/jailman/wiki/content/plugins/bazarr.md
deleted file mode 100644
index 3af74aa187d..00000000000
--- a/archive/jailman/wiki/content/plugins/bazarr.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Bazarr
-
-Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements. You define your preferences by TV show or movie and Bazarr takes care of everything for you.
-
-Be aware that Bazarr doesn't scan disk to detect series and movies: It only takes care of the series and movies that are indexed in Sonarr and Radarr.
-
-Thanks to the folks at OpenSubtitles for their logo that was an inspiration for ours.
-
-**For more information about Bazarr, please checkout:**
-
-https://github.com/morpheus65535/bazarr
-
-## Known issues
-
-- The Bazarr installer might throw SSL errors if your TrueNAS "date and time" settings are incorrect, these errors break the installation process.
diff --git a/archive/jailman/wiki/content/plugins/bitwarden.md b/archive/jailman/wiki/content/plugins/bitwarden.md
deleted file mode 100644
index be8a95bbfa2..00000000000
--- a/archive/jailman/wiki/content/plugins/bitwarden.md
+++ /dev/null
@@ -1,14 +0,0 @@
-# Bitwarden_RS
-
-This is a Bitwarden server API implementation written in Rust compatible with [upstream Bitwarden clients](https://bitwarden.com/#download)\*, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal.
-
-**For more information about Bitwarden_RS, please checkout:**
-https://github.com/dani-garcia/bitwarden_rs
-
-## Configuration Parameters
-
-- admin_token: Long (preferable random) password to be used to open the Bitwarden_rs admin interface. Admin interface is disabled when empty
-- link_mariadb: MariaDB jail to be used for storing the database.
-- mariadb_database: The name of the database used for (encrypted) credential storage. defaults to the jail name. Will be created on first install.
-- mariadb_user: The name of the database user to be used for (encrypted) credential storage. defaults to the database name. Will be created on first install.
-- mariadb_password: The password of the database user to be used for (encrypted) credential storage. defaults to the database name.
diff --git a/archive/jailman/wiki/content/plugins/forked_daapd.md b/archive/jailman/wiki/content/plugins/forked_daapd.md
deleted file mode 100644
index cc96c45bdce..00000000000
--- a/archive/jailman/wiki/content/plugins/forked_daapd.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# forked-dappd
-
-This plugin installs forked-daapd with a current version of ffmpeg.
-As it compiles ffmepg from sources the initialisation takes a while (~25 minutes
-on a Xeon E3-1230 v5 @ 3.40GHz).
-
-#### Configuration parameters
-
-- itunes_media: Path to your itunes media that will be mounted in the jail. (ex. /mnt/tank/media/music/itunes/)
-
-`forked-daapd` needs to know the location of your iTunes Library. Add a `itunes_media:`
-section to your `config.yaml` with the path to your itunes library as value.
diff --git a/archive/jailman/wiki/content/plugins/grafana.md b/archive/jailman/wiki/content/plugins/grafana.md
deleted file mode 100644
index 94d74dbd9a4..00000000000
--- a/archive/jailman/wiki/content/plugins/grafana.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# Grafana
-
-Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share dashboards with your team and foster a data driven culture:
-
-**For more information about Grafana, please checkout:**
-https://grafana.com
-
-#### Configuration Parameters
-
-- password (req): The password for the default admin account (admin). Required.
-- link_influxdb (opt): set to the name of the influxdb jail to set as datasource, if desired.
-- link_unifi (opt): set to the name of the Unifi jail with Unifi Poller to automatically get its data from influxdb. (requires link_influxdb)
diff --git a/archive/jailman/wiki/content/plugins/influxdb.md b/archive/jailman/wiki/content/plugins/influxdb.md
deleted file mode 100644
index 22d08c19597..00000000000
--- a/archive/jailman/wiki/content/plugins/influxdb.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# InfluxDB
-
-InfluxDB is an open source time series platform. This includes APIs for storing and querying data, processing it in the background for ETL or monitoring and alerting purposes, user dashboards, and visualizing and exploring the data and more. The master branch on this repo now represents the latest InfluxDB, which now includes functionality for Kapacitor (background processing) and Chronograf (the UI) all in a single binary.
-
-**For more information about InfluxDB, please checkout:**
-https://github.com/influxdata/influxdb
diff --git a/archive/jailman/wiki/content/plugins/jackett.md b/archive/jailman/wiki/content/plugins/jackett.md
deleted file mode 100644
index dc666a580ed..00000000000
--- a/archive/jailman/wiki/content/plugins/jackett.md
+++ /dev/null
@@ -1,10 +0,0 @@
-## jackett
-
-Jackett is tool designed to combine and search multiple bittorrent trackers like a proxy.
-
-**For more information about Jackett, please checkout:**
-https://github.com/Jackett/Jackett
-
-### Post-install
-
-Currently there are not relevant post-install steps, other than your own personal preferences for setting up Jacket.
diff --git a/archive/jailman/wiki/content/plugins/kms.md b/archive/jailman/wiki/content/plugins/kms.md
deleted file mode 100644
index 60cf769107b..00000000000
--- a/archive/jailman/wiki/content/plugins/kms.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Py-KMS
-
-_py-kms_ is a port of node-kms created by [cyrozap](http://forums.mydigitallife.info/members/183074-markedsword), which is a port of either the C##, C++, or .NET implementations of KMS Emulator. The original version was written by [CODYQX4](http://forums.mydigitallife.info/members/89933-CODYQX4) and is derived from the reverse-engineered code of Microsoft's official KMS.
-
-**For more information about Py-KMS, please checkout:**
-https://github.com/SystemRage/py-kms
diff --git a/archive/jailman/wiki/content/plugins/lazylibrarian.md b/archive/jailman/wiki/content/plugins/lazylibrarian.md
deleted file mode 100644
index f283d3c59f8..00000000000
--- a/archive/jailman/wiki/content/plugins/lazylibrarian.md
+++ /dev/null
@@ -1,4 +0,0 @@
-# Plugin Template
-
-This Repository contains a templatate to base your plugin on.
-Please be aware: When submitting your plugin, this readme gets added to the Wiki
diff --git a/archive/jailman/wiki/content/plugins/lidarr.md b/archive/jailman/wiki/content/plugins/lidarr.md
deleted file mode 100644
index 30d524a2e93..00000000000
--- a/archive/jailman/wiki/content/plugins/lidarr.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Lidarr
-
-Lidarr is a music collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new tracks from your favorite artists and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.
-
-**For more information about Lidarr, please checkout:**
-
-https://github.com/lidarr/Lidarr
diff --git a/archive/jailman/wiki/content/plugins/mariadb.md b/archive/jailman/wiki/content/plugins/mariadb.md
deleted file mode 100644
index e3613845dad..00000000000
--- a/archive/jailman/wiki/content/plugins/mariadb.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# MariaDB
-
-MariaDB is designed as a drop-in replacement of MySQL(R) with more
-features, new storage engines, fewer bugs, and better performance.
-
-**For more information about MariaDB, please checkout:**
-https://github.com/MariaDB/server/
-
-## Configuration Parameters:
-
-cert_email: Currently not used, but required due to a caddy bug.
-root_password: The root password used for MariaDB
diff --git a/archive/jailman/wiki/content/plugins/nextcloud.md b/archive/jailman/wiki/content/plugins/nextcloud.md
deleted file mode 100644
index 69462856b25..00000000000
--- a/archive/jailman/wiki/content/plugins/nextcloud.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Nextcloud
-
-Nextcloud is the most deployed on-premises file share and collaboration platform. Access & collaborate across your devices.
-
-**For more information about Nextcloud, please checkout:**
-https://nextcloud.com/
-
-## Configuration parameters:
-
-- time_zone: Is the time zone of your location, in PHP notation--see the [PHP manual](http://php.net/manual/en/timezones.php) for a list of all valid time zones.
-- cert_type: DNS_CERT, STANDALONE_CERT, SELFSIGNED_CERT, and NO_CERT determine which method will be used to generate a TLS certificate (or, in the case of NO_CERT, indicate that you don't want to use SSL at all). DNS_CERT and STANDALONE_CERT indicate use of DNS or HTTP validation for Let's Encrypt, respectively.
-- cert_email: The email address Let's Encrypt will use to notify you of certificate expiration. This is mandatory regardless of whether you're using Let's Encrypt (Caddy won't start without it), but it's only used with Let's Encrypt. If you are **not** using one of the Let's Encrypt certificate options, you can set this to a dummy address as above. If you **are** using Let's Encrypt, though, it should be set to a valid address for the system admin.
-- dns_plugin: If DNS_CERT is set, DNS_PLUGIN must contain the name of the DNS validation plugin you'll use with Caddy to validate domain control. See the [Caddy documentation](https://caddyserver.com/docs) under the heading of "DNS Providers" for the available plugins, but omit the leading "tls.dns.". For example, to use Cloudflare, set `DNS_PLUGIN="cloudflare"`.
-- dns_env: If DNS_CERT is set, DNS_ENV must contain the authentication credentials for your DNS provider. See the [Caddy documentation](https://caddyserver.com/docs) under the heading of "DNS Providers" for further details. For Cloudflare, you'd set `DNS_ENV="CLOUDFLARE_EMAIL=foo@bar.baz CLOUDFLARE_API_KEY=blah"`, using your the email address of your Cloudflare account and your Global API key--the newer API tokens aren't currently supported.
-- link_mariadb: The name of the MariaDB database jail you want to use.
-- mariadb_password: The Password for the mariadb database user you want to use. Will be created on first install.
-- mariadb_user: The name for the mariadb database user you want to use. Will be created on first install. Will default to the database name.
-- mariadb_database: The name of the mariadb database you want to use. Will be created on first install. Will default to the jail name.
-- admin_password: The password for the default Nextcloud admin user you want to create. Not created on reinstall.
diff --git a/archive/jailman/wiki/content/plugins/organizr.md b/archive/jailman/wiki/content/plugins/organizr.md
deleted file mode 100644
index 2a40ebc363e..00000000000
--- a/archive/jailman/wiki/content/plugins/organizr.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Organizr
-
-Do you have quite a bit of services running on your computer or server? Do you have a lot of bookmarks or have to memorize a bunch of ip's and ports? Well, Organizr is here to help with that. Organizr allows you to setup "Tabs" that will be loaded all in one webpage. You can then work on your server with ease. Want to give users access to some Tabs? No problem, just enable user support and have them make an account. Want guests to be able to visit too? Enable Guest support for those tabs.
-
-**For more information about Organizr, please checkout:**
-https://github.com/causefx/Organizr
diff --git a/archive/jailman/wiki/content/plugins/plex.md b/archive/jailman/wiki/content/plugins/plex.md
deleted file mode 100644
index b4c85233f76..00000000000
--- a/archive/jailman/wiki/content/plugins/plex.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# Plex
-
-Plex gives you one place to find and access all the media that matters to you. From personal media on your own server, to podcasts, web shows, and news, to streaming music, you can enjoy it all in one app, on any device.
-
-**For more information about Plex, please checkout:**
-https://plex.tv
-
-#### Advanced config parameters:
-
-- ramdisk: Specify the `size` parameter to create a transcoding ramdisk under /tmp_transcode. Requires manual setting it un plex to be used for transcoding. (optional)
-
-#### Experimental config parameters:
-
-These parameters are either not fully tested or expected to break with short-term OS updates. They are included in the release however, because they are suspected to become stable eventually.
-
-- hw_transcode: set this to "true" to enable hardware transcoding on compatible systems, to "false" to disable or, preferable, just leave it out to disable
diff --git a/archive/jailman/wiki/content/plugins/radarr.md b/archive/jailman/wiki/content/plugins/radarr.md
deleted file mode 100644
index a6aef8a5e24..00000000000
--- a/archive/jailman/wiki/content/plugins/radarr.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Radarr
-
-Radarr is an **independent** fork of [Sonarr](https://github.com/Sonarr/Sonarr) reworked for automatically downloading movies via Usenet and BitTorrent.
-
-**For more information about Radarr, please checkout:**
-
-https://github.com/Radarr/Radarr
diff --git a/archive/jailman/wiki/content/plugins/sabnzbd.md b/archive/jailman/wiki/content/plugins/sabnzbd.md
deleted file mode 100644
index d23deec12de..00000000000
--- a/archive/jailman/wiki/content/plugins/sabnzbd.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Sabnzbd
-
-plugin for Sabnzbd news reader.
-
-**For more information about Sabnzbd, please checkout:**
-https://github.com/sabnzbd/sabnzbd
diff --git a/archive/jailman/wiki/content/plugins/sabnzbd3.md b/archive/jailman/wiki/content/plugins/sabnzbd3.md
deleted file mode 100644
index d5751fd7e01..00000000000
--- a/archive/jailman/wiki/content/plugins/sabnzbd3.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Sabnzbd v3
-
-SABnzbd is a multi-platform binary newsgroup downloader. The program works in the background and simplifies the downloading verifying and extracting of files from Usenet.
-V3. is the newest (beta) version of Sabnzbd
-
-**For more information about Sabnzbd, please checkout:**
-https://sabnzbd.org/
diff --git a/archive/jailman/wiki/content/plugins/sonarr.md b/archive/jailman/wiki/content/plugins/sonarr.md
deleted file mode 100644
index 5b4114c769f..00000000000
--- a/archive/jailman/wiki/content/plugins/sonarr.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Sonarr
-
-Sonarr is a PVR for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.
-
-**For more information about Sonarr, please checkout:**
-
-https://github.com/Sonarr/Sonarr
diff --git a/archive/jailman/wiki/content/plugins/tautulli.md b/archive/jailman/wiki/content/plugins/tautulli.md
deleted file mode 100644
index f3840a1075a..00000000000
--- a/archive/jailman/wiki/content/plugins/tautulli.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Tautulli
-
-A python based web application for monitoring, analytics and notifications for [Plex Media Server](https://plex.tv).
-
-**For more information about Tautulli, please checkout:**
-https://github.com/Tautulli/Tautulli
diff --git a/archive/jailman/wiki/content/plugins/template.md b/archive/jailman/wiki/content/plugins/template.md
deleted file mode 100644
index f283d3c59f8..00000000000
--- a/archive/jailman/wiki/content/plugins/template.md
+++ /dev/null
@@ -1,4 +0,0 @@
-# Plugin Template
-
-This Repository contains a templatate to base your plugin on.
-Please be aware: When submitting your plugin, this readme gets added to the Wiki
diff --git a/archive/jailman/wiki/content/plugins/traefik.md b/archive/jailman/wiki/content/plugins/traefik.md
deleted file mode 100644
index e18b8be9745..00000000000
--- a/archive/jailman/wiki/content/plugins/traefik.md
+++ /dev/null
@@ -1,98 +0,0 @@
-# Traefik
-
-Traefik is a reverse proxy, this means it sits in-between your servers and the internet. Often these reverse proxies also, just like traefik, function as SSL endpoints, this means they encrypt the traffic comming from/to your servers.
-
-Standalone without docker Traefik is quite a challenge to setup right. JailMan tries to make it as easy as possible for your, by doing most of the groundwork and tweaking for you.
-This also means we don't support all features of traefik. We use traefik as a central reverse proxy and ssl termination endpoint for all our jails. Nothing more, Nothing less.
-
-To make things as streamlined as possible we had to make choices. Hence we only support DNS-verification for certificate generation. No http(s) verification is included.
-
-**For more information about Traefik, please checkout:**
-https://containo.us/traefik/
-
-## Configuration Parameters
-
-Traefik requires a little more variables to setup in config.yml than other jails.
-Here is the list of configuration parameters:
-
-- dns_provider: The DNS provider you are using to verify ownership of the domain. This is required to get a letsencrypt certificate. We only support DNS-verification for certificate generation.
-- domain_name: The domain name you want to use to connect to traefik. Needs to be accessable at the DNS provider (cert_provider) with the DNS credentials (cert_env) provided.
-- cert_email: The email adress to link to the Lets Encrypt certificate
-- dashboard: set to "true" to enable the dashboard.
-- cert_env: For DNS verification we need login credentials and need to write those in a way Traefik understands. You can find the requirements for your DNS provider at the traefik website: https://docs.traefik.io/https/acme/
- You will need to use 2 spaces(!) in front and enter them below this configuration option. Like this:
-
-```
- cert_env:
- CF_API_EMAIL: fake@email.adress
- CF_API_KEY: ftyhsfgufsgusfgjhsfghjsgfhj
-```
-
-### Advanced settings
-
-These settings are normally not required or normally used, but might come in handy for advanced users.
-
-- cert_staging: Set this to "true" if you want to test it out using the Lets Encrypt staging server. Set it to "false" or (preferable) just leave it out to use the production server.
-- cert_wildcard_domain: If you want to generate wildcard certificates, please enter the domain name here, without `*.` (ex. `test.testdomain.com`)
-- cert_strict_sni: set to "true" to enable strict SNI checking, set to false or (preferably) just leave it out to disable strict-SNI checking.
-- link_influxdb: This links traefik to a influxdb jail to store metrics data (influxdb_password required)
-- influxdb_password: this sets up a password to use for the influxdb database
-- traefik_auth_basic: Add basic authentication to the traefik dashboard itself (if used on the traefik jail) or another jail (if used on another jail)
-- traefik_forward_auth: Add forwarded authentication to the traefik dashboard itself (if used on the traefik jail) or another jail (if used on another jail)
-
-## Installing
-
-To make traefik as easy as possible to install, we advice to base your config.yml settings on the following example:
-
-```
-traefikjail:
- blueprint: traefik
- ip4_addr: 192.168.1.200/24
- gateway: 192.168.1.1
- dashboard: true
- traefik_auth_basic: user:password user2:pass2
- domain_name: traefik.test.placeholder.net
- dns_provider: cloudflare
- cert_staging: true
- cert_email: fake@email.net
- cert_wildcard_domain: test.placeholder.net
- # Please follow the guide here: https://docs.traefik.io/https/acme/
- # and enter your DNS providers environment variables below (2 spaces indent) of cert_env
- cert_env:
- CF_API_EMAIL: fake@email.adress
- CF_API_KEY: ftyhsfgufsgusfgjhsfghjsgfhj
- link_influxdb: influxdbjail
- influxdb_password: traefikmetricspass
-```
-
-## Usages
-
-To add a jail to traefik, you will need a domain name (which can be accessed using the cert_env settings on traefik).
-If you have the domain name configured correctly on traefik, just add the following config parameter to the other jail (not traefik), where $traefikjail is the name of your traefik-jail:
-
-```
- domain_name: myjail.test.com
- traefik_proxy: $traefikjail
-```
-
-## Security
-
-If you want to add security to a jail, there are two opions: basic_auth or forward_auth.
-**basic_auth:**
-Basic_auth uses a simpel username and passowrd prompt before it allows anyone to open the site. It can be enabled by adding the following config parameter in addition to traefik_proxy.
-
-```
- traefik_basic_auth: user1:password1 user2:password2
-
-```
-
-**forward_auth:**
-forward_auth checks if you already have access (http not-403) to another website. It's more advanced to setup, but it (for example) enables you to easily add central authentication to jails using organizr.
-The following is an example config, using an organizr jail. It needs to be added in addition to traefik_proxy:
-
-```
- traefik_auth_forward: https://organizr.testdomain.com/api/?v1/auth&group=1
-
-```
-
-Although the web interface shows port 9080 and 9443, Traefik is actually also listening on the (more common) port 80 and 443, also known as normal (without port in the URL) http and https ports.
diff --git a/archive/jailman/wiki/content/plugins/transmission.md b/archive/jailman/wiki/content/plugins/transmission.md
deleted file mode 100644
index ccdcd295e79..00000000000
--- a/archive/jailman/wiki/content/plugins/transmission.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Transmission
-
-Transmission is a fast, easy, and free BitTorrent client.
-
-**For more information about Transmission, please checkout:**
-https://github.com/transmission/transmission
diff --git a/archive/jailman/wiki/content/plugins/unifi.md b/archive/jailman/wiki/content/plugins/unifi.md
deleted file mode 100644
index 9d6c94235d9..00000000000
--- a/archive/jailman/wiki/content/plugins/unifi.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# Unifi Controller
-
-The UniFi® Controller is a wireless network managementsoftware solution from Ubiquiti Networks™. It allows you tomanage multiple wireless networks using a web browser.
-
-**For more information about Unifi Controller, please checkout:**
-https://www.ui.com
-
-**For more information about Unifi Poller, please checkout:**
-https://github.com/unifi-poller/unifi-poller
-
-### Installation:
-
-- This jail requires an existing InfluxDB jail. InfluxDB may be created using the same install command, as long as influxdb is listed first.
-- Once the script runs, a user must be created in the Unifi Controller software for your Unifi-Poller user.
-- To view the data from Unifi-Poller, Grafana is required. Add the unifi InfluxDB database as a data source in Grafana.
-
-### Config Description
-
-- unifi_poller: boolean, true if you want to also install unifi-poller
-- link_influxdb: This is the name of your influxdb database jail, should be influxdb.
-- influxdb_database: The name of the database that will be created in influxdb for Unifi Poller.
-- influxdb_user & influxdb_password: The created database's credentials for Unifi Poller.
-- poller_user & poller_password: The Unifi-Poller user credentials. This user must be created in the Unifi Controller web gui after install matching these credentials. This is for the connection between Unifi Controller & Unifi Poller
-
-### Unifi-Controller Post-Install
-
-After the script runs and the unifi jail is running, open the web gui of the unifi jail at port 8443 (i.e. https://192.168.2.250:8443). After completing the initial setup wizard, go to Admins --> Add New Admin. Select "Manually set and share the password", enter the username and password used for up_user & up_password. Uncheck 'Require the user to change their password'. Verify "Role" is set to 'Read Only'. Click Create.
diff --git a/archive/jailman/wiki/mkdocs.yml b/archive/jailman/wiki/mkdocs.yml
deleted file mode 100644
index 2ae00edd7cf..00000000000
--- a/archive/jailman/wiki/mkdocs.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-# Project Information
-site_name: JailMan
-site_description: "Project Documentation for JailManager"
-site_author: "JailManager Team"
-docs_dir: content/
-site_url: "https://wiki2.jailmanager.org"
-
-# Repository
-repo_name: "jailmanager/jailman"
-repo_url: "https://github.com/jailmanager/jailman"
-edit_uri: "edit/content/"
-
-theme:
- name: "material"
- features:
- - tabs
- language: "en"
-
-markdown_extensions:
- - admonition
- - codehilite:
- guess_lang: false
- - toc:
- permalink: true
diff --git a/archive/kubelet-cert-approver.yaml b/archive/kubelet-cert-approver.yaml
deleted file mode 100644
index 27dec086ef7..00000000000
--- a/archive/kubelet-cert-approver.yaml
+++ /dev/null
@@ -1,188 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- labels:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- app.kubernetes.io/version: v1.2.1
- helm.sh/chart: kubelet-csr-approver-1.2.1
- name: kubelet-csr-approver
- namespace: kube-system
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- labels:
- app.kubernetes.io/managed-by: Helm
- name: kubelet-csr-approver
-rules:
- - apiGroups:
- - coordination.k8s.io
- resources:
- - leases
- verbs:
- - create
- - get
- - update
- - apiGroups:
- - ""
- resources:
- - events
- verbs:
- - create
- - apiGroups:
- - certificates.k8s.io
- resources:
- - certificatesigningrequests
- verbs:
- - get
- - list
- - watch
- - apiGroups:
- - certificates.k8s.io
- resources:
- - certificatesigningrequests/approval
- verbs:
- - update
- - apiGroups:
- - certificates.k8s.io
- resourceNames:
- - kubernetes.io/kubelet-serving
- resources:
- - signers
- verbs:
- - approve
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- labels:
- app.kubernetes.io/managed-by: Helm
- name: kubelet-csr-approver
- namespace: kube-system
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kubelet-csr-approver
-subjects:
- - kind: ServiceAccount
- name: kubelet-csr-approver
- namespace: kube-system
----
-apiVersion: v1
-kind: Service
-metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- prometheus.io/port: "8080"
- prometheus.io/scrape: "true"
- labels:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- app.kubernetes.io/version: v1.2.1
- helm.sh/chart: kubelet-csr-approver-1.2.1
- name: kubelet-csr-approver
- namespace: kube-system
-spec:
- ports:
- - name: metrics
- port: 8080
- protocol: TCP
- targetPort: metrics
- selector:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- type: ClusterIP
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- labels:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- app.kubernetes.io/version: v1.2.1
- helm.sh/chart: kubelet-csr-approver-1.2.1
- name: kubelet-csr-approver
- namespace: kube-system
-spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- template:
- metadata:
- annotations:
- meta.helm.sh/release-name: kubelet-csr-approver
- meta.helm.sh/release-namespace: kube-system
- labels:
- app.kubernetes.io/instance: kubelet-csr-approver
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kubelet-csr-approver
- spec:
- containers:
- - args:
- - -metrics-bind-address
- - :8080
- - -health-probe-bind-address
- - :8081
- - -leader-election
- env:
- - name: ALLOWED_DNS_NAMES
- value: "1"
- image: ghcr.io/postfinance/kubelet-csr-approver:v1.2.1
- imagePullPolicy: IfNotPresent
- livenessProbe:
- httpGet:
- path: /healthz
- port: 8081
- name: kubelet-csr-approver
- ports:
- - containerPort: 8080
- name: metrics
- protocol: TCP
- resources:
- limits:
- cpu: 500m
- memory: 128Mi
- requests:
- cpu: 100m
- memory: 64Mi
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - all
- privileged: false
- readOnlyRootFilesystem: true
- runAsGroup: 65532
- runAsNonRoot: true
- runAsUser: 65532
- seccompProfile:
- type: RuntimeDefault
- securityContext: {}
- serviceAccountName: kubelet-csr-approver
- tolerations:
- - effect: NoSchedule
- key: node-role.kubernetes.io/control-plane
- operator: Equal
- name: wget
- restartPolicy: Never
diff --git a/archive/removereleases.py b/archive/scripts/removereleases.py
similarity index 100%
rename from archive/removereleases.py
rename to archive/scripts/removereleases.py
diff --git a/charts/incubator/spegel/.helmignore b/charts/incubator/spegel/.helmignore
deleted file mode 100644
index feb7464da6f..00000000000
--- a/charts/incubator/spegel/.helmignore
+++ /dev/null
@@ -1,32 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
-# OWNERS file for Kubernetes
-OWNERS
-# helm-docs templates
-*.gotmpl
-# docs folder
-/docs
-# icon
-icon.png
-icon.webp
-icon-small.webp
diff --git a/charts/incubator/spegel/icon.webp b/charts/incubator/spegel/icon.webp
deleted file mode 100644
index c876cb18cc1..00000000000
Binary files a/charts/incubator/spegel/icon.webp and /dev/null differ
diff --git a/charts/incubator/spegel/templates/NOTES.txt b/charts/incubator/spegel/templates/NOTES.txt
deleted file mode 100644
index efcb74cb772..00000000000
--- a/charts/incubator/spegel/templates/NOTES.txt
+++ /dev/null
@@ -1 +0,0 @@
-{{- include "tc.v1.common.lib.chart.notes" $ -}}
diff --git a/archive/charts/system/spegel/.helmignore b/charts/system/spegel/.helmignore
similarity index 100%
rename from archive/charts/system/spegel/.helmignore
rename to charts/system/spegel/.helmignore
diff --git a/charts/incubator/spegel/Chart.yaml b/charts/system/spegel/Chart.yaml
similarity index 100%
rename from charts/incubator/spegel/Chart.yaml
rename to charts/system/spegel/Chart.yaml
diff --git a/charts/incubator/spegel/README.md b/charts/system/spegel/README.md
similarity index 100%
rename from charts/incubator/spegel/README.md
rename to charts/system/spegel/README.md
diff --git a/charts/incubator/spegel/ci/ci-values.yaml b/charts/system/spegel/ci/ci-values.yaml
similarity index 100%
rename from charts/incubator/spegel/ci/ci-values.yaml
rename to charts/system/spegel/ci/ci-values.yaml
diff --git a/charts/incubator/spegel/dashboard.json b/charts/system/spegel/dashboard.json
similarity index 100%
rename from charts/incubator/spegel/dashboard.json
rename to charts/system/spegel/dashboard.json
diff --git a/archive/charts/system/spegel/icon.webp b/charts/system/spegel/icon.webp
similarity index 100%
rename from archive/charts/system/spegel/icon.webp
rename to charts/system/spegel/icon.webp
diff --git a/archive/charts/system/spegel/templates/NOTES.txt b/charts/system/spegel/templates/NOTES.txt
similarity index 100%
rename from archive/charts/system/spegel/templates/NOTES.txt
rename to charts/system/spegel/templates/NOTES.txt
diff --git a/charts/incubator/spegel/templates/_args.tpl b/charts/system/spegel/templates/_args.tpl
similarity index 100%
rename from charts/incubator/spegel/templates/_args.tpl
rename to charts/system/spegel/templates/_args.tpl
diff --git a/charts/incubator/spegel/templates/common.yaml b/charts/system/spegel/templates/common.yaml
similarity index 100%
rename from charts/incubator/spegel/templates/common.yaml
rename to charts/system/spegel/templates/common.yaml
diff --git a/charts/incubator/spegel/values.yaml b/charts/system/spegel/values.yaml
similarity index 100%
rename from charts/incubator/spegel/values.yaml
rename to charts/system/spegel/values.yaml