feat: adds keyboard shortcut support
feat: adds wezterm feat: adds cargo, flatpak and apt
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
#!/usr/bin/env zsh
|
||||
|
||||
source ~/dotfiles/bin/helpers/functions.sh
|
||||
source ~/dotfiles/bin/helpers/packages.sh
|
||||
source ~/dotfiles/bin/helpers/apt_packages.sh
|
||||
source ~/dotfiles/bin/helpers/vscode-extensions.sh
|
||||
source ~/dotfiles/bin/helpers/cargo_packages.sh
|
||||
|
||||
# Check if parameter --verbose was passed
|
||||
if [ "$2" = "--verbose" ]; then
|
||||
@@ -11,51 +12,6 @@ else
|
||||
verbose=false
|
||||
fi
|
||||
|
||||
# count entries in packages
|
||||
count=$(echo $packages | wc -w)
|
||||
installed=0
|
||||
|
||||
for package in $packages; do
|
||||
pkg_status=$(dpkg -s $package 2> /dev/null | grep "Status" | cut -d " " -f 4)
|
||||
|
||||
if [ "$pkg_status" = "installed" ]; then
|
||||
installed=$((installed + 1))
|
||||
else
|
||||
if [ "$verbose" = true ]; then
|
||||
printfe "%s\n" "red" "$package is not installed"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
printfe "%s\n" "cyan" "APT $installed/$count packages installed"
|
||||
|
||||
|
||||
load_vscode_extensions
|
||||
count_installed_extensions=0
|
||||
|
||||
# Loop through each extension and check if it's installed
|
||||
for extension in "${extensionList[@]}"; do
|
||||
result=$(code --list-extensions | grep -E "^${extension}$")
|
||||
if [ -z "$result" ]; then
|
||||
if [ "$verbose" = true ]; then
|
||||
printfe "%s" "yellow" "Extension $extension is not installed\n"
|
||||
fi
|
||||
else
|
||||
count_installed_extensions=$((count_installed_extensions + 1))
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$verbose" = true ]; then
|
||||
printfe "%s\n" "yellow" "Expected extensions:"
|
||||
for ext in "${extensionList[@]}"; do
|
||||
printfe "%s\n" "blue" "$ext"
|
||||
done
|
||||
|
||||
printfe "%s\n" "yellow" "Installed extensions:"
|
||||
while IFS= read -r installed_ext; do
|
||||
printfe "%s\n" "blue" "$installed_ext"
|
||||
done < <(code --list-extensions)
|
||||
fi
|
||||
|
||||
total_extensions=${#extensionList[@]}
|
||||
printfe "%s\n" "cyan" "VSCode $count_installed_extensions/$total_extensions extensions installed"
|
||||
print_apt_status
|
||||
print_cargo_status
|
||||
print_vsc_status
|
||||
|
@@ -10,6 +10,10 @@ if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
####################################################################################################
|
||||
# Update symlinks
|
||||
####################################################################################################
|
||||
|
||||
printfe "%s\n" "cyan" "Updating symlinks..."
|
||||
check_or_make_symlink ~/.zshrc ~/dotfiles/zshrc
|
||||
check_or_make_symlink ~/.config/Code/User/settings.json ~/dotfiles/vscode/settings.json
|
||||
@@ -21,15 +25,58 @@ else
|
||||
check_or_make_symlink ~/.gitconfig ~/dotfiles/config/gitconfig.linux
|
||||
fi
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring packages are installed..."
|
||||
source ~/dotfiles/bin/helpers/packages.sh
|
||||
ensure_packages_installed
|
||||
check_or_make_symlink ~/.ssh/config ~/dotfiles/ssh/config
|
||||
check_or_make_symlink ~/.wezterm.lua ~/dotfiles/config/wezterm.lua
|
||||
|
||||
|
||||
####################################################################################################
|
||||
# Update packages
|
||||
####################################################################################################
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring APT repositories are added..."
|
||||
source ~/dotfiles/bin/helpers/apt_packages.sh
|
||||
ensure_repositories
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring APT packages are installed..."
|
||||
ensure_apt_packages_installed
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring Cargo packages are installed..."
|
||||
source ~/dotfiles/bin/helpers/cargo_packages.sh
|
||||
ensure_cargo_packages_installed
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring Flatpak remotes are added..."
|
||||
source ~/dotfiles/bin/helpers/flatpak_packages.sh
|
||||
ensure_remotes_added
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring Flatpak packages are installed..."
|
||||
ensure_flatpak_packages_installed
|
||||
|
||||
printfe "%s\n" "cyan" "Ensuring VSCode extensions are installed..."
|
||||
source ~/dotfiles/bin/helpers/vscode-extensions.sh
|
||||
ensure_vscode_extensions_installed
|
||||
|
||||
printfe "%s\n" "cyan" "Importing Gnome Terminal preferences..."
|
||||
cat ~/dotfiles/config/gterminal.preferences | dconf load /org/gnome/terminal/legacy/profiles:/
|
||||
####################################################################################################
|
||||
# Update system settings
|
||||
####################################################################################################
|
||||
|
||||
printfe "%s\n" "green" "Finished, don't forget restart your terminal"
|
||||
printfe "%s\n" "cyan" "Setting up keyboard shortcuts..."
|
||||
source ~/dotfiles/bin/helpers/keyboard_shortcuts.sh
|
||||
ensure_keyboard_shortcuts
|
||||
|
||||
# printfe "%s\n" "cyan" "Importing Gnome Terminal preferences..."
|
||||
# cat ~/dotfiles/config/gterminal.preferences | dconf load /org/gnome/terminal/legacy/profiles:/
|
||||
|
||||
printfe "%s\n" "cyan" "Setting wezterm as default terminal..."
|
||||
if [ ! -f /usr/bin/wezterm ]; then
|
||||
printfe "%s\n" "red" "Wezterm is not installed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
current_terminal=$(sudo update-alternatives --query x-terminal-emulator | grep '^Value:' | awk '{print $2}')
|
||||
|
||||
if [ "$current_terminal" != "/usr/bin/wezterm" ]; then
|
||||
printfe "%s\n" "yellow" " - Setting wezterm as default terminal"
|
||||
sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator /usr/bin/wezterm 60
|
||||
else
|
||||
printfe "%s\n" "green" " - wezterm is already the default terminal"
|
||||
fi
|
||||
|
Reference in New Issue
Block a user