55 lines
942 B
Bash
Executable File
55 lines
942 B
Bash
Executable File
#!/bin/bash
|
|
|
|
function cmd_install_packages {
|
|
<$1 xargs apt -y install
|
|
}
|
|
|
|
function cmd_uninstall_packages {
|
|
<$1 xargs apt -y remove
|
|
apt -y autoremove
|
|
}
|
|
|
|
function check_package_list {
|
|
if [ ! -f "$1" ]; then
|
|
echo "Package file '$1' doesn't exist."
|
|
exit 2
|
|
fi
|
|
}
|
|
|
|
function install_package_list {
|
|
local list_file="packages.$1.list"
|
|
|
|
check_package_list $list_file
|
|
|
|
echo "Installing packages from '$list_file'"
|
|
|
|
cmd_install_packages $list_file
|
|
}
|
|
|
|
function uninstall_package_list {
|
|
local list_file="packages.$1.list"
|
|
|
|
check_package_list $list_file
|
|
|
|
echo "Uninstalling packages from '$list_file'"
|
|
|
|
cmd_uninstall_packages $list_file
|
|
}
|
|
|
|
function uninstall_packages_unwanted {
|
|
uninstall_package_list 'unwanted'
|
|
}
|
|
|
|
function install_packages_base {
|
|
install_package_list 'base'
|
|
}
|
|
|
|
function generate_ssh_key {
|
|
sudo -u $SUDO_USER sh -c '< /dev/zero ssh-keygen -q -N ""'
|
|
}
|
|
|
|
uninstall_packages_unwanted
|
|
install_packages_base
|
|
|
|
generate_ssh_key
|