55 lines
2.1 KiB
Bash
55 lines
2.1 KiB
Bash
#add sources list for questing.
|
|
set -e
|
|
set -x
|
|
echo "deb https://archive.ubuntu.com/ubuntu questing main restricted universe multiverse" > /etc/apt/sources.list
|
|
echo "deb https://archive.ubuntu.com/ubuntu questing-updates main restricted universe multiverse" >> /etc/apt/sources.list
|
|
echo "deb https://archive.ubuntu.com/ubuntu questing-backports main restricted universe multiverse" >> /etc/apt/sources.list
|
|
echo "deb https://security.ubuntu.com/ubuntu questing-security main restricted universe multiverse" >> /etc/apt/sources.list
|
|
apt update
|
|
apt upgrade -y
|
|
apt install -y jq bubblewrap curl make build-essential git libselinux1 iptables nftables libnetfilter-queue-dev
|
|
|
|
#install base system packages
|
|
apt install -y --install-recommends --install-suggests systemd
|
|
apt install -y vanilla-gnome-desktop vanilla-gnome-default-settings gdm3 gnome-shell-extension-appindicator gnome-shell-extension-ubuntu-dock gnome-shell-extension-ubuntu-tiling-assistant
|
|
apt install -y rlwrap dnsutils systemd-resolved ufw nano htop ipset lm-sensors net-tools iputils-ping python3-pip keepassxc ufw opensnitch
|
|
|
|
#install packages from config
|
|
jq -r '.packages | .[]' config.json | while read -r item; do
|
|
apt install -y "$item"
|
|
done
|
|
|
|
#set locale
|
|
locale=$(jq -r '.locale' config.json)
|
|
echo "$locale"
|
|
locale-gen "$locale"
|
|
echo "LANG=$locale" > /etc/default/locale
|
|
|
|
#add setuid for some applications
|
|
chmod u+s /usr/bin/bwrap
|
|
chmod u+s /usr/bin/ping
|
|
|
|
#disable setup screen config
|
|
mkdir -p ~/.config
|
|
touch ~/.config/gnome-initial-setup-done
|
|
|
|
#enable services
|
|
systemctl enable systemd-resolved
|
|
systemctl enable systemd-networkd
|
|
systemctl enable mem-alloc
|
|
|
|
#firewall enable (inbound block)
|
|
ufw enable
|
|
|
|
#install brave browser
|
|
curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg
|
|
curl -fsSLo /etc/apt/sources.list.d/brave-browser-release.sources https://brave-browser-apt-release.s3.brave.com/brave-browser.sources
|
|
apt update
|
|
apt install -y brave-browser
|
|
|
|
#configure permissions for opensnitch firewall
|
|
rsync -a /usr/src/opensnitchd/ /etc/opensnitchd/
|
|
chown -R root:root /etc/opensnitchd/
|
|
chmod 777 /etc/opensnitchd/settings.conf
|
|
|