install.fairie/docs/scripts/before/run_onchange_before_10-remove-bloatware.sh.tmpl.md
2023-08-08 03:06:49 -04:00

2.7 KiB

title description sidebar_label slug githubLocation scriptLocation repoLocation
Linux Bloatware Removal Removes Linux bloatware defined in `.removeLinuxPackages` of the `home/.chezmoidata.yaml` file 10 Linux Bloatware Removal /scripts/before/run_onchange_before_10-remove-bloatware.sh.tmpl https://github.com/megabyte-labs/install.doctor/blob/master/home/.chezmoiscripts/universal/run_onchange_before_10-remove-bloatware.sh.tmpl https://github.com/megabyte-labs/install.doctor/raw/master/home/.chezmoiscripts/universal/run_onchange_before_10-remove-bloatware.sh.tmpl home/.chezmoiscripts/universal/run_onchange_before_10-remove-bloatware.sh.tmpl

Linux Bloatware Removal

Removes Linux bloatware defined in .removeLinuxPackages of the home/.chezmoidata.yaml file

Overview

This script removes some of the software deemed to be "bloatware" by cycling through the values defined in .removeLinuxPackages of the home/.chezmoidata.yaml file.

Source Code

{{- if eq .host.distro.family "linux" -}}
#!/usr/bin/env bash
# @file Linux Bloatware Removal
# @brief Removes Linux bloatware defined in `.removeLinuxPackages` of the `home/.chezmoidata.yaml` file
# @description
#     This script removes some of the software deemed to be "bloatware" by cycling through the values defined in
#     `.removeLinuxPackages` of the `home/.chezmoidata.yaml` file.

{{ includeTemplate "universal/profile-before" }}
{{ includeTemplate "universal/logg-before" }}

{{- $removePackages := join " " .removeLinuxPackages }}

### Remove bloatware packages defined in .chezmoidata.yaml
for PKG in {{ $removePackages }}; do
    if command -v apk > /dev/null; then
        if apk list "$PKG" | grep "$PKG" > /dev/null; then
            sudo apk delete "$PKG"
        fi
    elif command -v apt-get > /dev/null; then
        if dpkg -l "$PKG" | grep -E '^ii' > /dev/null; then
            sudo apt-get remove -y "$PKG"
            logg success 'Removed `'"$PKG"'` via apt-get'
        fi
    elif command -v dnf > /dev/null; then
        if rpm -qa | grep "$PKG" > /dev/null; then
            sudo dnf remove -y "$PKG"
            logg success 'Removed `'"$PKG"'` via dnf'
        fi
    elif command -v yum > /dev/null; then
        if rpm -qa | grep "$PKG" > /dev/null; then
            sudo yum remove -y "$PKG"
            logg success 'Removed `'"$PKG"'` via yum'
        fi
    elif command -v pacman > /dev/null; then
        if pacman -Qs "$PKG" > /dev/null; then
            sudo pacman -R "$PKG"
            logg success 'Removed `'"$PKG"'` via pacman'
        fi
    elif command -v zypper > /dev/null; then
        if rpm -qa | grep "$PKG" > /dev/null; then
            sudo zypper remove -y "$PKG"
            logg success 'Removed `'"$PKG"'` via zypper'
        fi
    fi
done

{{- end }}