From abf8d7f57a6038feb3b1ebcfc267d8dd0f04064d Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Mon, 2 Nov 2026 17:49:17 +0100 Subject: [PATCH] refactor fedora install scripts --- install/fedora.sh | 63 ++++++--------------------------------- install/fedora/core.sh | 14 +++++++++ install/fedora/hypr.sh | 12 ++++++++ install/fedora/i3.sh | 17 +++++++++++ install/fedora/nvim.sh | 8 +++++ install/fedora/regreet.sh | 8 +++++ 6 files changed, 68 insertions(+), 54 deletions(-) create mode 100644 install/fedora/core.sh create mode 100644 install/fedora/hypr.sh create mode 100644 install/fedora/i3.sh create mode 100644 install/fedora/nvim.sh create mode 100644 install/fedora/regreet.sh diff --git a/install/fedora.sh b/install/fedora.sh index f4aa70f..f344075 100755 --- a/install/fedora.sh +++ b/install/fedora.sh @@ -1,5 +1,8 @@ #!/bin/bash +BASE_PATH=$(dirname $(readlink -f $BASH_SOURCE)) +SCRIPT_PATH="${BASE_PATH}/fedora" + if [ $# -lt 1 ]; then SELECTED=(core) else @@ -7,59 +10,11 @@ else fi for sel in "${SELECTED[@]}"; do - case $sel in - "core") - sudo dnf install -y dnf-plugins-core - sudo dnf config-manager addrepo --from-repofile=https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo - - sudo dnf install -y \ - fish \ - alacritty \ - tmux \ - xdg-utils \ - xsel \ - brave-browser \ - fzf - ;; - "nvim") - sudo dnf install -y \ - ripgrep \ - fswatch \ - fd-find \ - neovim - ;; - "hypr") - sudo dnf copr enable lionheartp/Hyprland - sudo dnf install -y \ - uwsm \ - sddm \ - hyprland \ - hyprpaper \ - rofi \ - dunst \ - waybar - ;; - "i3") - sudo dnf install -y \ - xorg-x11-xinit \ - i3 \ - picom \ - rofi \ - dunst \ - polybar \ - feh \ - lxappearance \ - ImageMagick \ - xautolock \ - xrandr \ - arandr \ - dejavu-fonts-all \ - fontawesome-fonts - ;; - *) - echo "Unknown option: $sel" - exit 1 - ;; - esac + if [ -f "${SCRIPT_PATH}/${sel}.sh" ]; then + echo -e "\033[32;1m *\033[0m ${sel}" + source "${SCRIPT_PATH}/${sel}.sh" + else : + echo "Invalid script '${sel}'" + fi done diff --git a/install/fedora/core.sh b/install/fedora/core.sh new file mode 100644 index 0000000..30339c3 --- /dev/null +++ b/install/fedora/core.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +sudo dnf install -y dnf-plugins-core +sudo dnf config-manager addrepo --from-repofile=https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo + +sudo dnf install -y \ + fish \ + alacritty \ + tmux \ + xdg-utils \ + xsel \ + brave-browser \ + fzf +;; diff --git a/install/fedora/hypr.sh b/install/fedora/hypr.sh new file mode 100644 index 0000000..7bb28e9 --- /dev/null +++ b/install/fedora/hypr.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +sudo dnf copr enable lionheartp/Hyprland +sudo dnf install -y \ + uwsm \ + sddm \ + hyprland \ + hyprpaper \ + rofi \ + dunst \ + waybar +;; diff --git a/install/fedora/i3.sh b/install/fedora/i3.sh new file mode 100644 index 0000000..b6c1fdb --- /dev/null +++ b/install/fedora/i3.sh @@ -0,0 +1,17 @@ + +sudo dnf install -y \ + xorg-x11-xinit \ + i3 \ + picom \ + rofi \ + dunst \ + polybar \ + feh \ + lxappearance \ + ImageMagick \ + xautolock \ + xrandr \ + arandr \ + dejavu-fonts-all \ + fontawesome-fonts +;; diff --git a/install/fedora/nvim.sh b/install/fedora/nvim.sh new file mode 100644 index 0000000..3f9de3b --- /dev/null +++ b/install/fedora/nvim.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +sudo dnf install -y \ + ripgrep \ + fswatch \ + fd-find \ + neovim +;; diff --git a/install/fedora/regreet.sh b/install/fedora/regreet.sh new file mode 100644 index 0000000..fce4f46 --- /dev/null +++ b/install/fedora/regreet.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +sudo useradd --system --user-group --no-create-home \ + --home-dir /nonexistent --shell /sbin/nologin greeter + +sudo dnf install -y dnf-plugins-core +sudo dnf copr enable pocketblue/extra +sudo dnf install -y greetd regreet cage