[fix] scripts: elimination of limitations on dedicated distributions

The restriction of shell scripts to certain distributions is only required for
certain actions such as the installation of a SearXNG instance. The maintenance
scripts and build processes were previously also restricted to these specific
distributions.  With this patch, the build processes (such as the build of
online documentation) can now also be executed on all Linux distributions.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
This commit is contained in:
Markus Heiser 2024-09-19 09:17:28 +02:00 committed by Markus Heiser
parent 0b832f19bf
commit d026486ce3
3 changed files with 25 additions and 15 deletions

View File

@ -958,7 +958,6 @@ nginx_distro_setup() {
;; ;;
esac esac
} }
nginx_distro_setup
install_nginx(){ install_nginx(){
info_msg "installing nginx ..." info_msg "installing nginx ..."
@ -1127,8 +1126,6 @@ apache_distro_setup() {
esac esac
} }
apache_distro_setup
install_apache(){ install_apache(){
info_msg "installing apache ..." info_msg "installing apache ..."
pkg_install "$APACHE_PACKAGES" pkg_install "$APACHE_PACKAGES"
@ -1291,8 +1288,6 @@ uWSGI_distro_setup() {
esac esac
} }
uWSGI_distro_setup
install_uwsgi(){ install_uwsgi(){
info_msg "installing uwsgi ..." info_msg "installing uwsgi ..."
pkg_install "$uWSGI_PACKAGES" pkg_install "$uWSGI_PACKAGES"
@ -1685,13 +1680,15 @@ LXC_BASE_PACKAGES_fedora="bash git @development-tools python"
# yum packages # yum packages
LXC_BASE_PACKAGES_centos="bash git python3" LXC_BASE_PACKAGES_centos="bash git python3"
case $DIST_ID in lxc_distro_setup() {
case $DIST_ID in
ubuntu|debian) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_debian}" ;; ubuntu|debian) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_debian}" ;;
arch) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_arch}" ;; arch) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_arch}" ;;
fedora) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_fedora}" ;; fedora) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_fedora}" ;;
centos) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_centos}" ;; centos) LXC_BASE_PACKAGES="${LXC_BASE_PACKAGES_centos}" ;;
*) err_msg "$DIST_ID-$DIST_VERS: pkg_install LXC_BASE_PACKAGES not yet implemented" ;; *) err_msg "$DIST_ID-$DIST_VERS: pkg_install LXC_BASE_PACKAGES not yet implemented" ;;
esac esac
}
lxc_install_base_packages() { lxc_install_base_packages() {
info_msg "install LXC_BASE_PACKAGES in container $1" info_msg "install LXC_BASE_PACKAGES in container $1"

View File

@ -135,6 +135,8 @@ main() {
local exit_val local exit_val
local _usage="unknown or missing $1 command $2" local _usage="unknown or missing $1 command $2"
lxc_distro_setup
# don't check prerequisite when in recursion # don't check prerequisite when in recursion
if [[ ! $1 == __* ]] && [[ ! $1 == --help ]]; then if [[ ! $1 == __* ]] && [[ ! $1 == --help ]]; then
if ! in_container; then if ! in_container; then

View File

@ -164,9 +164,16 @@ EOF
} }
main() { main() {
case $1 in
install|remove|instance)
nginx_distro_setup
apache_distro_setup
uWSGI_distro_setup
required_commands \ required_commands \
sudo systemctl install git wget curl \ sudo systemctl install git wget curl \
|| exit || exit
;;
esac
local _usage="unknown or missing $1 command $2" local _usage="unknown or missing $1 command $2"
@ -898,6 +905,10 @@ _searxng.instance.inspect() {
} }
searxng.doc.rst() { searxng.doc.rst() {
local APACHE_SITES_AVAILABLE="/etc/apache2/sites-available"
local NGINX_APPS_AVAILABLE="/etc/nginx/default.apps-available"
local debian="${SEARXNG_PACKAGES_debian}" local debian="${SEARXNG_PACKAGES_debian}"
local arch="${SEARXNG_PACKAGES_arch}" local arch="${SEARXNG_PACKAGES_arch}"
local fedora="${SEARXNG_PACKAGES_fedora}" local fedora="${SEARXNG_PACKAGES_fedora}"