feat: Alpine linux support (#814)

* Add basic apk to scripts

* Add common service script

* Fix alpine bugs

* Add flatpak installations

* chore: update scripts, add common-service-script to shellcheckrc
This commit is contained in:
Jeevitha Kannan K S 2024-11-08 00:33:21 +05:30 committed by GitHub
parent e31622480b
commit 1e39d967c5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
47 changed files with 298 additions and 66 deletions

View File

@ -1,2 +1,3 @@
external-sources=true
source=core/tabs/common-script.sh
source=core/tabs/common-service-script.sh

View File

@ -12,6 +12,9 @@ installMeld() {
apt-get|nala)
"$ESCALATION_TOOL" "$PACKAGER" -y install meld
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add meld
;;
*)
checkFlatpak
flatpak install -y flathub org.gnome.meld

View File

@ -29,6 +29,9 @@ installNeovim() {
dnf|zypper)
"$ESCALATION_TOOL" "$PACKAGER" install -y neovim ripgrep fzf python3-virtualenv luarocks golang ShellCheck git
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add neovim ripgrep fzf py3-virtualenv luarocks go shellcheck git
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installVsCode() {
if ! command_exists code; then
if ! command_exists com.visualstudio.code && ! command_exists code; then
printf "%b\n" "${YELLOW}Installing VS Code..${RC}."
case "$PACKAGER" in
apt-get|nala)
@ -28,6 +28,10 @@ installVsCode() {
printf "%b\n" '[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc' | "$ESCALATION_TOOL" tee /etc/yum.repos.d/vscode.repo > /dev/null
"$ESCALATION_TOOL" "$PACKAGER" install -y code
;;
apk)
checkFlatpak
flatpak install -y flathub com.visualstudio.code
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installVsCodium() {
if ! command_exists codium; then
if ! command_exists com.vscodium.codium && ! command_exists codium; then
printf "%b\n" "${YELLOW}Installing VS Codium...${RC}"
case "$PACKAGER" in
apt-get|nala)
@ -26,6 +26,10 @@ installVsCodium() {
printf "%b\n" "[gitlab.com_paulcarroty_vscodium_repo]\nname=download.vscodium.com\nbaseurl=https://download.vscodium.com/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg\nmetadata_expire=1h" | "$ESCALATION_TOOL" tee -a /etc/yum.repos.d/vscodium.repo
"$ESCALATION_TOOL" "$PACKAGER" install -y codium
;;
apk)
checkFlatpak
flatpak install -y flathub com.vscodium.codium
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -9,6 +9,9 @@ installAlacritty() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm alacritty
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add alacritty
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y alacritty
;;

View File

@ -15,6 +15,9 @@ install_adb() {
dnf|zypper)
"$ESCALATION_TOOL" "$PACKAGER" install -y android-tools
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add android-tools
;;
*)
printf "%b\n" "${RED}Unsupported package manager: "$PACKAGER"${RC}"
exit 1

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installBrave() {
if ! command_exists brave; then
if ! command_exists com.brave.Browser && ! command_exists brave; then
printf "%b\n" "${YELLOW}Installing Brave...${RC}"
case "$PACKAGER" in
apt-get|nala)
@ -29,6 +29,10 @@ installBrave() {
"$ESCALATION_TOOL" rpm --import https://brave-browser-rpm-release.s3.brave.com/brave-core.asc
"$ESCALATION_TOOL" "$PACKAGER" install -y brave-browser
;;
apk)
checkFlatpak
flatpak install -y flathub com.brave.Browser
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -9,6 +9,9 @@ if ! command_exists chromium; then
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm chromium
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add chromium
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y chromium
;;

View File

@ -18,6 +18,9 @@ installFirefox() {
dnf)
"$ESCALATION_TOOL" "$PACKAGER" install -y firefox
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add firefox
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installLibreWolf() {
if ! command_exists librewolf; then
if ! command_exists io.gitlab.librewolf-community && ! command_exists librewolf; then
printf "%b\n" "${YELLOW}Installing Librewolf...${RC}"
case "$PACKAGER" in
apt-get|nala)
@ -32,6 +32,10 @@ Signed-By: /usr/share/keyrings/librewolf.gpg" | "$ESCALATION_TOOL" tee /etc/apt/
pacman)
"$AUR_HELPER" -S --needed --noconfirm librewolf-bin
;;
apk)
checkFlatpak
flatpak install flathub io.gitlab.librewolf-community
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -9,6 +9,9 @@ installLynx() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm lynx
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add lynx
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y lynx
;;

View File

@ -22,6 +22,7 @@ installThrorium() {
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1
;;
esac
else

View File

@ -3,14 +3,14 @@
. ../../common-script.sh
installWaterfox() {
if ! command_exists waterfox; then
if ! command_exists net.waterfox.waterfox && ! command_exists waterfox; then
printf "%b\n" "${YELLOW}Installing waterfox...${RC}"
case "$PACKAGER" in
pacman)
"$AUR_HELPER" -S --needed --noconfirm waterfox-bin
;;
*)
. ../setup-flatpak.sh
checkFlatpak
flatpak install -y flathub net.waterfox.waterfox
;;
esac

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installDiscord() {
if ! command_exists discord; then
if ! command_exists com.discordapp.Discord && ! command_exists discord; then
printf "%b\n" "${YELLOW}Installing Discord...${RC}"
case "$PACKAGER" in
apt-get|nala)
@ -20,6 +20,10 @@ installDiscord() {
"$ESCALATION_TOOL" "$PACKAGER" install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
"$ESCALATION_TOOL" "$PACKAGER" install -y discord
;;
apk)
checkFlatpak
flatpak install -y flathub com.discordapp.Discord
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -3,7 +3,7 @@
. ../../common-script.sh
installJitsi() {
if ! command_exists jitsi-meet; then
if ! command_exists org.jitsi.jitsi-meet && ! command_exists jitsi-meet; then
printf "%b\n" "${YELLOW}Installing Jitsi meet...${RC}"
case "$PACKAGER" in
apt-get|nala)
@ -21,6 +21,10 @@ installJitsi() {
dnf)
"$ESCALATION_TOOL" "$PACKAGER" install -y jitsi-meet
;;
apk)
checkFlatpak
flatpak install flathub org.jitsi.jitsi-meet
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -23,6 +23,10 @@ installSignal() {
checkFlatpak
flatpak install -y flathub org.signal.Signal
;;
apk)
checkFlatpak
flatpak install -y flathub org.signal.Signal
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -9,6 +9,9 @@ installTelegram() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm telegram-desktop
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add telegram-desktop
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y telegram-desktop
;;

View File

@ -9,6 +9,9 @@ installThunderBird() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm thunderbird
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add thunderbird
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y thunderbird
;;

View File

@ -1,10 +1,10 @@
#!/bin/sh -e
. ../common-script.sh
. ../common-service-script.sh
# Function to prompt the user for installation choice
choose_installation() {
clear
printf "%b\n" "${YELLOW}Choose what to install:${RC}"
printf "%b\n" "1. ${YELLOW}Docker${RC}"
printf "%b\n" "2. ${YELLOW}Docker Compose${RC}"
@ -34,19 +34,20 @@ install_docker() {
;;
zypper)
"$ESCALATION_TOOL" "$PACKAGER" --non-interactive install docker
"$ESCALATION_TOOL" systemctl enable docker
"$ESCALATION_TOOL" systemctl start docker
;;
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --noconfirm docker
"$ESCALATION_TOOL" systemctl enable docker
"$ESCALATION_TOOL" systemctl start docker
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add docker
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1
;;
esac
startAndEnableService docker
}
install_docker_compose() {
@ -66,6 +67,9 @@ install_docker_compose() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm docker-compose
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add docker-cli-compose
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -14,6 +14,9 @@ installFastfetch() {
"$ESCALATION_TOOL" "$PACKAGER" install -y /tmp/fastfetch.deb
rm /tmp/fastfetch.deb
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add fastfetch
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y fastfetch
;;

View File

@ -9,6 +9,9 @@ installKitty() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm kitty
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add kitty
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y kitty
;;

View File

@ -45,6 +45,13 @@ installLinutil() {
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. $HOME/.cargo/env
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add build-base
"$ESCALATION_TOOL" "$PACKAGER" add rustup
rustup-init
# shellcheck disable=SC1091
. "$HOME/.cargo/env"
;;
*)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. $HOME/.cargo/env

View File

@ -19,6 +19,13 @@ updateLinutil() {
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
. $HOME/.cargo/env
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add build-base
"$ESCALATION_TOOL" "$PACKAGER" add rustup
rustup-init
# shellcheck disable=SC1091
. "$HOME/.cargo/env"
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y rustup
;;

View File

@ -11,6 +11,9 @@ installDepend() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm bash bash-completion tar bat tree unzip fontconfig git
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add bash bash-completion tar bat tree unzip fontconfig git
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y bash bash-completion tar bat tree unzip fontconfig git
;;

View File

@ -16,6 +16,9 @@ installLibreOffice() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm libreoffice-fresh
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add libreoffice
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -9,6 +9,9 @@ installEvince() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm evince
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add evince
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y evince
;;

View File

@ -9,6 +9,9 @@ installOkular() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm okular
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add okular
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y okular
;;

View File

@ -9,6 +9,9 @@ installRofi() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm rofi
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add rofi
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y rofi
;;

View File

@ -10,6 +10,9 @@ installZsh() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm zsh
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add zsh
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y zsh
;;

View File

@ -123,6 +123,12 @@ checkPackageManager() {
fi
done
## Enable apk community packages
if [ "$PACKAGER" = "apk" ] && grep -qE '^#.*community' /etc/apk/repositories; then
"$ESCALATION_TOOL" sed -i '/community/s/^#//' /etc/apk/repositories
"$ESCALATION_TOOL" "$PACKAGER" update
fi
if [ -z "$PACKAGER" ]; then
printf "%b\n" "${RED}Can't find a supported package manager${RC}"
exit 1
@ -169,7 +175,7 @@ checkEnv() {
checkArch
checkEscalationTool
checkCommandRequirements "curl groups $ESCALATION_TOOL"
checkPackageManager 'nala apt-get dnf pacman zypper'
checkPackageManager 'nala apt-get dnf pacman zypper apk'
checkCurrentDirectoryWritable
checkSuperUser
checkDistro

View File

@ -0,0 +1,85 @@
#!/bin/sh -e
checkInitManager() {
for manager in $1; do
if command_exists "$manager"; then
INIT_MANAGER="$manager"
printf "%b\n" "${CYAN}Using ${manager} to interact with init system${RC}"
break
fi
done
if [ -z "$INIT_MANAGER" ]; then
printf "%b\n" "${RED}Can't find a supported init system${RC}"
exit 1
fi
}
startService() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" start "$1"
;;
rc-service)
"$ESCALATION_TOOL" "$INIT_MANAGER" "$1" start
;;
esac
}
stopService() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" stop "$1"
;;
rc-service)
"$ESCALATION_TOOL" "$INIT_MANAGER" "$1" stop
;;
esac
}
enableService() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" enable "$1"
;;
rc-service)
"$ESCALATION_TOOL" rc-update add "$1"
;;
esac
}
disableService() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" disable "$1"
;;
rc-service)
"$ESCALATION_TOOL" rc-update del "$1"
;;
esac
}
startAndEnableService() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" enable --now "$1"
;;
rc-service)
enableService "$1"
startService "$1"
;;
esac
}
isServiceActive() {
case "$INIT_MANAGER" in
systemctl)
"$ESCALATION_TOOL" "$INIT_MANAGER" is-active --quiet "$1"
;;
rc-service)
"$ESCALATION_TOOL" "$INIT_MANAGER" "$1" status --quiet
;;
esac
}
checkInitManager 'systemctl rc-service'

View File

@ -9,6 +9,9 @@ installPkg() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm ufw
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add ufw
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y ufw
;;

View File

@ -37,6 +37,9 @@ installDepend() {
"$ESCALATION_TOOL" "$PACKAGER" --non-interactive install $DEPENDENCIES $COMPILEDEPS
"$ESCALATION_TOOL" "$PACKAGER" --non-interactive install libgcc_s1-gcc7-32bit glibc-devel-32bit
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add build-base multitail tar tree trash-cli unzip cmake jq
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y $DEPENDENCIES
;;

View File

@ -50,7 +50,8 @@ installDepend() {
"$ESCALATION_TOOL" "$PACKAGER" -n install $DEPENDENCIES
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y $DEPENDENCIES
printf "%b\n" "${RED}Unsupported package manager ${PACKAGER}${RC}"
exit 1
;;
esac
}
@ -95,6 +96,8 @@ installAdditionalDepend() {
"$ESCALATION_TOOL" "$PACKAGER" -n install $DISTRO_DEPS
;;
*)
printf "%b\n" "${RED}Unsupported package manager ${PACKAGER}${RC}"
exit 1
;;
esac
}

View File

@ -1,6 +1,7 @@
#!/bin/sh -e
. ../common-script.sh
. ../common-service-script.sh
cleanup_system() {
printf "%b\n" "${YELLOW}Performing system cleanup...${RC}"
@ -23,6 +24,9 @@ cleanup_system() {
"$ESCALATION_TOOL" "$PACKAGER" -Sc --noconfirm
"$ESCALATION_TOOL" "$PACKAGER" -Rns $(pacman -Qtdq) --noconfirm > /dev/null 2>&1
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" cache clean
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ${PACKAGER}. Skipping.${RC}"
;;
@ -39,7 +43,9 @@ common_cleanup() {
if [ -d /var/log ]; then
"$ESCALATION_TOOL" find /var/log -type f -name "*.log" -exec truncate -s 0 {} \;
fi
if [ "$INIT_MANAGER" = "systemctl" ]; then
"$ESCALATION_TOOL" journalctl --vacuum-time=3d
fi
}
clean_data() {

View File

@ -48,6 +48,9 @@ fastUpdate() {
"$ESCALATION_TOOL" "$PACKAGER" ref
"$ESCALATION_TOOL" "$PACKAGER" --non-interactive dup
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" update
;;
*)
printf "%b\n" "${RED}Unsupported package manager: "$PACKAGER"${RC}"
exit 1
@ -74,6 +77,9 @@ updateSystem() {
"$ESCALATION_TOOL" "$PACKAGER" ref
"$ESCALATION_TOOL" "$PACKAGER" --non-interactive dup
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" upgrade
;;
*)
printf "%b\n" "${RED}Unsupported package manager: "$PACKAGER"${RC}"
exit 1

View File

@ -1,6 +1,7 @@
#!/bin/sh -e
. ../common-script.sh
. ../common-service-script.sh
# Function to check Bluez is installed
setupBluetooth() {
@ -10,6 +11,9 @@ setupBluetooth() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --noconfirm bluez-utils
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add bluez
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y bluez
;;
@ -18,15 +22,7 @@ setupBluetooth() {
printf "%b\n" "${GREEN}Bluez is already installed.${RC}"
fi
# Check if bluetooth service is running
if ! systemctl is-active --quiet bluetooth; then
printf "%b\n" "${YELLOW}Bluetooth service is not running. Starting it now...${RC}"
"$ESCALATION_TOOL" systemctl start bluetooth
if systemctl is-active --quiet bluetooth; then
printf "%b\n" "${GREEN}Bluetooth service started successfully.${RC}"
fi
fi
startService bluetooth
}
# Function to display the main menu

View File

@ -12,6 +12,7 @@ list_devices() {
printf "\n"
}
# shellcheck disable=SC2086
installDependencies() {
DEPENDENCIES="xz gzip bzip2 jq"
if ! command_exists ${DEPENDENCIES}; then
@ -23,6 +24,8 @@ installDependencies() {
"${ESCALATION_TOOL}" "${PACKAGER}" install -y ${DEPENDENCIES};;
pacman)
"${ESCALATION_TOOL}" "${PACKAGER}" -S --noconfirm --needed ${DEPENDENCIES};;
apk)
"${ESCALATION_TOOL}" "${PACKAGER}" add ${DEPENDENCIES};;
*)
printf "%b\n" "${RED}Unsupported package manager.${RC}"
exit 1

View File

@ -19,6 +19,9 @@ if ! command_exists openssl; then
zypper)
"$ESCALATION_TOOL" "$PACKAGER" install openssl
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add openssl
;;
*)
printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}"
exit 1

View File

@ -1,6 +1,7 @@
#!/bin/sh -e
. ../common-script.sh
. ../common-service-script.sh
create_file() {
printf "%b\n" "Creating script..."
@ -33,6 +34,11 @@ EOF
}
numlockSetup() {
if [ "$INIT_MANAGER" = "rc-service" ]; then
printf "%b\n" "${RED}Unsupported init system.${RC}"
exit 1
fi
if [ ! -f "/usr/local/bin/numlock" ]; then
create_file
fi
@ -44,10 +50,10 @@ numlockSetup() {
printf "%b" "Do you want to enable Numlock on boot? (y/N): "
read -r confirm
if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then
"$ESCALATION_TOOL" systemctl enable numlock.service --quiet
enableService numlock
printf "%b\n" "Numlock will be enabled on boot"
else
"$ESCALATION_TOOL" systemctl disable numlock.service --quiet
disableService numlock
printf "%b\n" "Numlock will not be enabled on boot"
fi
}

View File

@ -11,7 +11,7 @@ installollama() {
else
printf "%b\n" "${YELLOW}Installing ollama...${RC}"
curl -fsSL https://ollama.com/install.sh | sh
"$ESCALATION_TOOL" systemctl start ollama
startService ollama
fi
}

View File

@ -19,6 +19,9 @@ installAutoCpufreq() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm git
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add git
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y git
;;

View File

@ -11,6 +11,9 @@ install_package() {
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm "$PACKAGE"
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add "$PACKAGE"
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y "$PACKAGE"
;;
@ -34,23 +37,23 @@ setup_ssh() {
install_package openssh
SSH_SERVICE="sshd"
;;
apk)
install_package openssh
SSH_SERVICE="sshd"
;;
*)
install_package openssh-server
SSH_SERVICE="sshd"
;;
esac
# Enable and start the appropriate SSH service
"$ESCALATION_TOOL" systemctl enable "$SSH_SERVICE"
"$ESCALATION_TOOL" systemctl start "$SSH_SERVICE"
startAndEnableService "$SSH_SERVICE"
# Get the local IP address
LOCAL_IP=$(ip -4 addr show | awk '/inet / {print $2}' | tail -n 1)
printf "%b\n" "${GREEN}Your local IP address is: $LOCAL_IP${RC}"
# Check if SSH is running
if systemctl is-active --quiet "$SSH_SERVICE"; then
if isServiceActive "$SSH_SERVICE"; then
printf "%b\n" "${GREEN}SSH is up and running.${RC}"
else
printf "%b\n" "${RED}Failed to start SSH.${RC}"
@ -130,12 +133,11 @@ setup_samba() {
EOL
fi
# Enable and start Samba services
"$ESCALATION_TOOL" systemctl enable smb nmb
"$ESCALATION_TOOL" systemctl start smb nmb
for service in smb nmb; do
startAndEnableService "$service"
done
# Check if Samba is running
if systemctl is-active --quiet smb && systemctl is-active --quiet nmb; then
if isServiceActive smb && isServiceActive nmb; then
printf "%b\n" "${GREEN}Samba is up and running.${RC}"
printf "%b\n" "${YELLOW}Samba share available at: $SHARED_DIR${RC}"
else

View File

@ -12,9 +12,12 @@ install_timeshift() {
pacman)
"$ESCALATION_TOOL" "${PACKAGER}" -S --noconfirm timeshift
;;
*)
dnf|zypper|apt-get|nala)
"$ESCALATION_TOOL" "${PACKAGER}" install -y timeshift
;;
*)
printf "%b\n" "${RED}Unsupported package manager.${RC}"
;;
esac
else
printf "%b\n" "${GREEN}Timeshift is already installed.${RC}"

View File

@ -13,6 +13,9 @@ setup_xrandr() {
apt-get|nala)
"$ESCALATION_TOOL" "$PACKAGER" install -y x11-xserver-utils
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add xrandr
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y xorg-x11-server-utils
;;

View File

@ -1,6 +1,7 @@
#!/bin/sh -e
. ../common-script.sh
. ../common-service-script.sh
# Function to check if NetworkManager is installed
setupNetworkManager() {
@ -13,6 +14,9 @@ setupNetworkManager() {
dnf)
"$ESCALATION_TOOL" "$PACKAGER" install -y NetworkManager-1
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add networkmanager-wifi iwd
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y network-manager
;;
@ -22,14 +26,12 @@ setupNetworkManager() {
fi
# Check if NetworkManager service is running
if ! systemctl is-active --quiet NetworkManager; then
if ! isServiceActive NetworkManager; then
printf "%b\n" "${YELLOW}NetworkManager service is not running. Starting it now...${RC}"
"$ESCALATION_TOOL" systemctl start NetworkManager
if systemctl is-active --quiet NetworkManager; then
startService NetworkManager
else
printf "%b\n" "${GREEN}NetworkManager service started successfully.${RC}"
fi
fi
}
# Function to display the main menu