From 8c144bdb8c2afd438ec8cfd54d6c2817e69e03bd Mon Sep 17 00:00:00 2001 From: TyleoDvDelaware3217 Date: Thu, 30 Jan 2025 19:07:51 +0000 Subject: [PATCH] Update-Fedora-WS-v2.0_2025 --- irp-fedora | 79 ----------- irp-fedora-ws | 355 +++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 310 insertions(+), 124 deletions(-) diff --git a/irp-fedora b/irp-fedora index bd5a6d4..74d4411 100755 --- a/irp-fedora +++ b/irp-fedora @@ -2,85 +2,6 @@ clear -## FEDORA BASEOS FILES -osrel="/etc/fedora-release" -###################### - -## COLORS -# Reset -Color_Off='\033[0m' # Text Reset - -# Regular Colors -Black='\033[0;30m' # Black -Red='\033[0;31m' # Red -Green='\033[0;32m' # Green -Yellow='\033[0;33m' # Yellow -Blue='\033[0;34m' # Blue -Purple='\033[0;35m' # Purple -Cyan='\033[0;36m' # Cyan -White='\033[0;37m' # White - -# Bold -BBlack='\033[1;30m' # Black -BRed='\033[1;31m' # Red -BGreen='\033[1;32m' # Green -BYellow='\033[1;33m' # Yellow -BBlue='\033[1;34m' # Blue -BPurple='\033[1;35m' # Purple -BCyan='\033[1;36m' # Cyan -BWhite='\033[1;37m' # White - -# Underline -UBlack='\033[4;30m' # Black -URed='\033[4;31m' # Red -UGreen='\033[4;32m' # Green -UYellow='\033[4;33m' # Yellow -UBlue='\033[4;34m' # Blue -UPurple='\033[4;35m' # Purple -UCyan='\033[4;36m' # Cyan -UWhite='\033[4;37m' # White - -# Background -On_Black='\033[40m' # Black -On_Red='\033[41m' # Red -On_Green='\033[42m' # Green -On_Yellow='\033[43m' # Yellow -On_Blue='\033[44m' # Blue -On_Purple='\033[45m' # Purple -On_Cyan='\033[46m' # Cyan -On_White='\033[47m' # White - -# High Intensity -IBlack='\033[0;90m' # Black -IRed='\033[0;91m' # Red -IGreen='\033[0;92m' # Green -IYellow='\033[0;93m' # Yellow -IBlue='\033[0;94m' # Blue -IPurple='\033[0;95m' # Purple -ICyan='\033[0;96m' # Cyan -IWhite='\033[0;97m' # White - -# Bold High Intensity -BIBlack='\033[1;90m' # Black -BIRed='\033[1;91m' # Red -BIGreen='\033[1;92m' # Green -BIYellow='\033[1;93m' # Yellow -BIBlue='\033[1;94m' # Blue -BIPurple='\033[1;95m' # Purple -BICyan='\033[1;96m' # Cyan -BIWhite='\033[1;97m' # White - -# High Intensity backgrounds -On_IBlack='\033[0;100m' # Black -On_IRed='\033[0;101m' # Red -On_IGreen='\033[0;102m' # Green -On_IYellow='\033[0;103m' # Yellow -On_IBlue='\033[0;104m' # Blue -On_IPurple='\033[0;105m' # Purple -On_ICyan='\033[0;106m' # Cyan -On_IWhite='\033[0;107m' # White -###################### - ## HEADER echo -e "${On_Green}==================================================================== diff --git a/irp-fedora-ws b/irp-fedora-ws index 226950a..0d98616 100755 --- a/irp-fedora-ws +++ b/irp-fedora-ws @@ -1,38 +1,32 @@ #!/usr/bin/env bash -ver="1.0" +ver="2.0_2025_git.tyleo.dev" -wget scr.tyleo.dev/irp-fedora-ws -O ./irp-fedora-ws +wget scr.tyleo.dev/irp-fedora-ws -O ./irp-fedora-ws &>/dev/null clear -# Header +# Functions -echo "=============================================== -== Tyleo Systems Initialization Setup Script == -===============================================" -echo "Version : $ver" -echo "Hosts : scr.tyleo.dev:443,res.tyleo.dev:443" -echo "Hostname: $HOSTNAME" +update-system-hostname() { echo -n "Set a new Hostname : " read NHostname -sudo hostnamectl set-hostname --static $NHostname -sleep 3 +sudo hostnamectl set-hostname --static $NHostname +} -# Run -clear +update-system-packages() { sudo dnf makecache sudo dnf up -y -sudo dnf in "https://hst.tyleo.dev/packages/rpm/ocs-url_fc20.rpm" -y -sudo dnf in gparted duf alien aria2 ffmpeg micro fedora-workstation-repositories gnome-boxes ptyxis timeshift pwgen ncdu htop btop glances figlet fish zsh gimp openshot google-chrome-stable google-chrome-canary gnome-tweaks distrobox docker docker-compose -y +} -## FLATPAK PACKAGES SETUP - CUSTOMIZE IT - DONT FORGET "\" AT THE END OF LINE (EXCEPTED THE LAST ONE) -# Adding Flathub Source -clear -sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo -flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo -# Downloading Keyguard -sudo wget "https://github.com/AChep/keyguard-app/releases/download/r20250112/Keyguard.flatpak" -O /tmp/keyguard.flatpak -# Installing Packages -sudo flatpak install "/tmp/keyguard.flatpak" -y +update-personnal-packages() { +sudo dnf in "https://hst.tyleo.dev/packages/rpm/ocs-url_fc20.rpm" -y +sudo dnf in flatpak nmap nmtui gparted duf alien aria2 ffmpeg micro fedora-workstation-repositories gnome-boxes ptyxis timeshift pwgen ncdu htop btop glances figlet fish zsh gimp openshot google-chrome-stable google-chrome-canary gnome-tweaks distrobox docker docker-compose -y +sudo dnf up flatpak nmap nmtui gparted duf alien aria2 ffmpeg micro fedora-workstation-repositories gnome-boxes ptyxis timeshift pwgen ncdu htop btop glances figlet fish zsh gimp openshot google-chrome-stable google-chrome-canary gnome-tweaks distrobox docker docker-compose -y +} + +update-flatpak-packages() { +if [ -x /usr/bin/flatpak ]; then +sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo >>/dev/null +flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo >>/dev/null sudo flatpak install flathub -y \ com.github.tchx84.Flatseal \ io.github.dweymouth.supersonic \ @@ -82,11 +76,18 @@ info.smplayer.SMPlayer \ io.github.kukuruzka165.materialgram \ com.usebottles.bottles # Removing Blacklisted Packs -clear sudo flatpak remove -y \ io.github.spacingbat3.webcord sudo flatpak update -y +fi +} +update-flatpak-keyguard() { +sudo wget "https://github.com/AChep/keyguard-app/releases/download/r20250112/Keyguard.flatpak" -O /tmp/keyguard.flatpak +sudo flatpak install "/tmp/keyguard.flatpak" -y +} + +install-vpn-client() { sudo tee /etc/yum.repos.d/pritunl.repo << EOF [pritunl] name=Pritunl Repository @@ -95,17 +96,17 @@ gpgcheck=1 enabled=1 gpgkey=https://raw.githubusercontent.com/pritunl/pgp/master/pritunl_repo_pub.asc EOF - sudo dnf install pritunl-client-electron -y -#!/usr/bin/env bash +} +update-fonts-package() { # Sourcing and Parameters SOURCE_FONT_PACKFILE="https://res.tyleo.dev/fonts/fontpack.tar.gz" TEMP_FONT_PACKFILE="/tmp/fontpack.tar.gz" FONTDIR="/usr/share/fonts/custom" # Preparing Font Directory -clear +sudo rm -rfv $FONTDIR >/dev/null sudo mkdir -pv $FONTDIR # Downloading Assets and Placing Them @@ -114,8 +115,9 @@ sudo tar -xvf $TEMP_FONT_PACKFILE -C $FONTDIR # Refreshing FC Cache sudo fc-cache -r +} -# Web Extension invokations for easy install +update-theming-pack() { NGnomeBinary="gnome-session" if [ -x /usr/bin/$NGnomeBinary ]; then echo "> Preparing Theming Packs..." @@ -124,7 +126,7 @@ sudo dnf remove gnome-text-editor -y sudo dnf install gedit -y # Automatic Theming GTK to Fluent Design Purple Theme -clear + mkdir $HOME/.themes mkdir -p $HOME/.local/icons @@ -157,38 +159,301 @@ sudo flatpak override --filesystem=~/.local/share/icons sudo cp /etc/environment /etc/environment.bak echo "GTK_THEME='Fluent-purple-Dark'" | sudo tee /etc/environment echo "export GTK_THEME='Fluent-purple-Dark'"| sudo tee -a /etc/environment - fi +} - - -# Default Shell to FiSH +update-usermod() { +sudo dnf in -y fish sudo usermod --shell /usr/bin/fish root sudo usermod --shell /usr/bin/fish $USER +} -# Welcome Message +update-wlcm() { SCR_SOURCE="https://scr.tyleo.dev/runner/exec_wlcm" SCR_LOCALS="/usr/bin/wlcm" -clear echo "> Downloading Script ..." sudo wget "https://scr.tyleo.dev/runner/exec_wlcm" -O "/usr/bin/wlcm" echo "> Allowing direct execution ... (+x)" sudo chmod +x -v /usr/bin/wlcm echo "> Finished, add 'wlcm' or 'bash /usr/bin/wlcm' to RC files for autorun !" -echo "> Ended." -echo "> Recommanded Extension :" +} + +show-gnome-extensions-list() { echo https://extensions.gnome.org/extension/19/user-themes echo https://extensions.gnome.org/extension/3628/arcmenu echo https://extensions.gnome.org/extension/2890/tray-icons-reloaded/ echo https://extensions.gnome.org/extension/1160/dash-to-panel/ +} -clear -read -p "Reboot System ? " -n 1 -r -echo -if [[ $REPLY =~ ^[Yy]$ ]] -then +execute-reboot() { + sudo /usr/sbin/reboot +} + +## FEDORA BASEOS FILES +osrel="/etc/fedora-release" +###################### + +## COLORS +# Reset +Color_Off='\033[0m' # Text Reset + +# Regular Colors +Black='\033[0;30m' # Black +Red='\033[0;31m' # Red +Green='\033[0;32m' # Green +Yellow='\033[0;33m' # Yellow +Blue='\033[0;34m' # Blue +Purple='\033[0;35m' # Purple +Cyan='\033[0;36m' # Cyan +White='\033[0;37m' # White + +# Bold +BBlack='\033[1;30m' # Black +BRed='\033[1;31m' # Red +BGreen='\033[1;32m' # Green +BYellow='\033[1;33m' # Yellow +BBlue='\033[1;34m' # Blue +BPurple='\033[1;35m' # Purple +BCyan='\033[1;36m' # Cyan +BWhite='\033[1;37m' # White + +# Underline +UBlack='\033[4;30m' # Black +URed='\033[4;31m' # Red +UGreen='\033[4;32m' # Green +UYellow='\033[4;33m' # Yellow +UBlue='\033[4;34m' # Blue +UPurple='\033[4;35m' # Purple +UCyan='\033[4;36m' # Cyan +UWhite='\033[4;37m' # White + +# Background +On_Black='\033[40m' # Black +On_Red='\033[41m' # Red +On_Green='\033[42m' # Green +On_Yellow='\033[43m' # Yellow +On_Blue='\033[44m' # Blue +On_Purple='\033[45m' # Purple +On_Cyan='\033[46m' # Cyan +On_White='\033[47m' # White + +# High Intensity +IBlack='\033[0;90m' # Black +IRed='\033[0;91m' # Red +IGreen='\033[0;92m' # Green +IYellow='\033[0;93m' # Yellow +IBlue='\033[0;94m' # Blue +IPurple='\033[0;95m' # Purple +ICyan='\033[0;96m' # Cyan +IWhite='\033[0;97m' # White + +# Bold High Intensity +BIBlack='\033[1;90m' # Black +BIRed='\033[1;91m' # Red +BIGreen='\033[1;92m' # Green +BIYellow='\033[1;93m' # Yellow +BIBlue='\033[1;94m' # Blue +BIPurple='\033[1;95m' # Purple +BICyan='\033[1;96m' # Cyan +BIWhite='\033[1;97m' # White + +# High Intensity backgrounds +On_IBlack='\033[0;100m' # Black +On_IRed='\033[0;101m' # Red +On_IGreen='\033[0;102m' # Green +On_IYellow='\033[0;103m' # Yellow +On_IBlue='\033[0;104m' # Blue +On_IPurple='\033[0;105m' # Purple +On_ICyan='\033[0;106m' # Cyan +On_IWhite='\033[0;107m' # White +###################### + +header-show() { clear - /sbin/reboot + echo -e "$On_Green $BWhite Procedure in progress : $title $Color_Off" +} + +reload-script() { + chmod +x $PWD/$(basename $0) + bash -c "$PWD/$(basename $0)" && exit +} + +wait-3s() { + sleep 3 +} + +wait-for-keypress() { + echo -n -e $On_White $BBlack + read -p " Press any key to continue... " -n1 -s + echo -n -e $Color_Off +} + +enable-cmd-mode() { + echo -e -n $IYellow +} + +disable-cmd-mode() { + echo -e -n $Color_Off +} + +################################################################################################################# +################################################################################################################# +################################################################################################################# +################################################################################################################# +################################################################################################################# +################################################################################################################# + +echo -e "$On_IPurple $BWhite Tyleo Deploy Script - Version $ver $Color_Off" +echo -e "$On_White $BBlack PhoenixProject Fedora Script to Customize Fedora Systems - https://tyleo.dev $Color_Off" +echo -e "$BGreen +------------------------------------------------ +|$BCyan A. Execute All Jobs (Full Deploy)$BGreen | +|$BGray G. Show Gnome Extensions URLs $BGreen | +| | +| 1. Update System Packages & Configuration | +| 2. Update Flatpak Packages & Configurationw | +| 3. Update Fontpack Configuration | +| 4. Update Theming Configuration | +| 5. Update System Hostname | +| 6. Update Usermod Configuration | +| | +|$BBlue V. Install/Update VPN Client $BGreen | +| | +|$BRed R. Reboot System $BGreen | +|$BRed Q. Exit Deployer $BGreen | +------------------------------------------------$Color_Off" +echo -e -n "$BGreen Procedure to start (CAPS) : " +read choice +echo -e $Color_Off + +if [[ $choice = $null ]]; then + reload-script fi -clear \ No newline at end of file + +if [[ $choice = A ]]; then + wait-3s + title="Full Deploy/Update/Setup" + header-show + enable-cmd-mode + update-system-hostname + update-system-packages + install-vpn-client + update-flatpak-packages + update-flatpak-keyguard + update-fonts-package + update-theming-pack + update-usermod + disable-cmd-mode + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 2 ]]; then + wait-3s + title="Flatpak Updates Packages & Configuration" + header-show + enable-cmd-mode + update-flatpak-packages + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 3 ]]; then + wait-3s + title="Fontpack Updates and Installation" + header-show + enable-cmd-mode + update-fonts-package + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 4 ]]; then + wait-3s + title="Theming for Gnome Desktop Updates and Installation" + header-show + enable-cmd-mode + update-theming-pack + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 5 ]]; then + wait-3s + title="System Hostname Configuration" + header-show + enable-cmd-mode + update-system-hostname + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 5 ]]; then + wait-3s + title="User Modifications Configurations" + header-show + enable-cmd-mode + update-usermod + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = V ]]; then + wait-3s + title="VPN Client Installation or Updates (Pritunl Client Electron)" + header-show + enable-cmd-mode + install-vpn-client + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = 1 ]]; then + wait-3s + title="System Packages Updates and Configurations" + header-show + enable-cmd-mode + update-system-packages + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = G ]]; then + wait-3s + title="Gnome Extensions List" + header-show + enable-cmd-mode + show-gnome-extensions-list + disable-cmd-mode + wait-for-keypress + reload-script +fi + +if [[ $choice = R ]] +then + title="Rebooting System" + header-show + enable-cmd-mode + echo "System Will Reboot after 3s..." + disable-cmd-mode + execute-reboot + wait-3s + reload-script +fi + +if [[ $choice = T ]] +then + title="Test Procedure" + header-show + wait-3s + reload-script +fi \ No newline at end of file