#!/usr/bin/env bash # apparmor.d - Full set of apparmor profiles # Copyright (C) 2023 Alexandre Pujol # SPDX-License-Identifier: GPL-2.0-only set -eu # shellcheck source=/dev/null _lsb_release() { . /etc/os-release; echo "$ID"; } DISTRIBUTION="$(_lsb_release)" readonly SRC=/tmp/src readonly DISTRIBUTION main() { install -dm0750 -o "$SUDO_USER" -g "$SUDO_USER" "/home/$SUDO_USER/Projects/" "/home/$SUDO_USER/.config/" install -Dm0644 -o "$SUDO_USER" -g "$SUDO_USER" $SRC/.bash_aliases "/home/$SUDO_USER/.bash_aliases" install -Dm0644 -o "$SUDO_USER" -g "$SUDO_USER" $SRC/htoprc "/home/$SUDO_USER/.config/htop/htoprc" install -Dm0644 $SRC/parser.conf /etc/apparmor/parser.conf install -Dm0644 $SRC/site.local /etc/apparmor.d/tunables/etc.d/site.local install -Dm0755 $SRC/aa-update /usr/bin/aa-update chown -R "$SUDO_USER:$SUDO_USER" "/home/$SUDO_USER/.config/" case "$DISTRIBUTION" in debian | ubuntu) dpkg -i $SRC/apparmor.d_*_all.deb ;; opensuse*) zypper install -y bash-completion git go htop make rsync vim ;; arch) pacman --noconfirm -U $SRC/apparmor.d-*-x86_64.pkg.tar.zst ;; esac } main "$@"