From af2fdd62ccfbdd8bf4438630bc535ec6be3e5f85 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sun, 26 May 2024 16:21:30 -0700 Subject: [PATCH] Make everything an install script --- install.sh | 26 ++++++-------------------- install/gui-apps.sh | 8 ++++++++ install/libraries.sh | 5 +++++ install/terminal-apps.sh | 2 ++ 4 files changed, 21 insertions(+), 20 deletions(-) create mode 100644 install/gui-apps.sh create mode 100644 install/libraries.sh create mode 100644 install/terminal-apps.sh diff --git a/install.sh b/install.sh index 053e266..a3361ac 100644 --- a/install.sh +++ b/install.sh @@ -1,28 +1,14 @@ # Libraries and infrastructure -echo -e "\e[32mINSTALLING CORE DEVELOPMENT LIBRARIES\e[0m" +echo -e "\e[32mINSTALLING OMAKUB\e[0m" + +# Needed for all installers sudo apt update -y -sudo apt install -y \ - build-essential pkg-config autoconf bison rustc cargo clang \ - libssl-dev libreadline-dev zlib1g-dev libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev libjemalloc2 \ - libvips imagemagick libmagickwand-dev mupdf mupdf-tools \ - redis-tools sqlite3 libsqlite3-0 libmysqlclient-dev +sudo apt install -y curl git -# CLI apps -echo -e "\e[32mINSTALLING CLI APPSe[0m" -sudo apt install -y git curl fzf ripgrep bat eza zoxide btop apache2-utils -sudo snap install zellij --classic - -# GUI apps -echo -e "\e[32mINSTALLING GUI APPSe[0m" -sudo apt install -y xournalpp alacritty -sudo snap install 1password spotify vlc zoom-client signal-desktop pinta -sudo snap install code --classic - -# Installers -echo -e "\e[32mRUNNING CUSTOM INSTALLERSe[0m" +# Run installers for script in ~/.omakub/install/*.sh; do source $script; done -# Reboot to pick up all settings +# Reboot to pickup changes read -p "Ready to reboot the system for all settings to take effect? (YES/no): " response if [[ -z "$response" || "$response" =~ ^[Yy][Ee][Ss]$ || "$response" =~ ^[Yy]$ ]]; then sudo reboot diff --git a/install/gui-apps.sh b/install/gui-apps.sh new file mode 100644 index 0000000..faa53f6 --- /dev/null +++ b/install/gui-apps.sh @@ -0,0 +1,8 @@ +sudo apt install -y xournalpp alacritty +sudo snap install 1password +sudo snap install spotify +sudo snap install vlc +sudo snap install zoom-client +sudo snap install signal-desktop +sudo snap install pinta +sudo snap install code --classic diff --git a/install/libraries.sh b/install/libraries.sh new file mode 100644 index 0000000..74b4c9c --- /dev/null +++ b/install/libraries.sh @@ -0,0 +1,5 @@ +sudo apt install -y \ + build-essential pkg-config autoconf bison rustc cargo clang \ + libssl-dev libreadline-dev zlib1g-dev libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev libjemalloc2 \ + libvips imagemagick libmagickwand-dev mupdf mupdf-tools \ + redis-tools sqlite3 libsqlite3-0 libmysqlclient-dev diff --git a/install/terminal-apps.sh b/install/terminal-apps.sh new file mode 100644 index 0000000..885a0e2 --- /dev/null +++ b/install/terminal-apps.sh @@ -0,0 +1,2 @@ +sudo apt install -y fzf ripgrep bat eza zoxide btop apache2-utils +sudo snap install zellij --classic