#!/bin/bash
# configurers new client
# version 8-4-2024

# stop on error
set -e

# sources.list
now=$(date +"%d-%m-%y")
cd /tmp
wget https://vandervlis.nl/files/sources.list12
mv /etc/apt/sources.list /etc/apt/sources.list-$now
mv sources.list12 /etc/apt/sources.list

# remove contrib and nonfree:
# sed -i -e 's/main contrib non-free/main/g' /etc/apt/sources.list

apt-get -qq update

# unattended upgrades
apt-get -qqy install unattended-upgrades
if test -e /etc/apt/apt.conf.d/10periodic; then rm /etc/apt/apt.conf.d/10periodic; fi
wget https://vandervlis.nl/files/20auto-upgrades -O /etc/apt/apt.conf.d/20auto-upgrades
wget https://vandervlis.nl/files/50unattended-upgrades -O /etc/apt/apt.conf.d/50unattended-upgrades

# some extra software
apt-get -qqy install chromium chromium-l10n
apt-get -qqy install thunderbird thunderbird-l10n-nl
apt-get -qqy install atril gdebi
apt-get -qqy remove evince
apt-get -qqy install sudo iptables
apt-get -qqy install rpl seahorse
apt-get -qqy install dbus-x11
apt-get -qqy install pmount  # om usb devices te mounten.
apt-get -qqy install webext-ublock-origin-firefox
apt-get -qqy install dconf-cli
apt-get -qqy install caja-admin

# my firewall:
wget https://vandervlis.nl/files/firewall-laptop -O /usr/local/sbin/firewall
chmod +x /usr/local/sbin/firewall
wget https://www.vandervlis.nl/files/firewall-init -O /etc/init.d/firewall
chmod +x /etc/init.d/firewall
wget https://vandervlis.nl/files/firewall.service -O /lib/systemd/system/firewall.service
if ! test -e /lib/systemd/system/firewall.service; then
  ln -s /lib/systemd/system/firewall.service /etc/systemd/system/
fi
systemctl daemon-reload
systemctl enable firewall
systemctl start firewall
sleep 3

# /etc/skel  (voor xfce)
# mv /etc/skel /etc/skel-backup
# mkdir /etc/skel
# cd /etc/skel
# wget -qr -nd --no-parent https://vandervlis.nl/files/skel
# rm index.html*

# welkompaul scripts
apt-get -qqy install tigervnc-scraping-server
wget https://vandervlis.nl/files/welkompaul -O /usr/local/bin/welkompaul
chmod +x /usr/local/bin/welkompaul
wget https://vandervlis.nl/files/welkompaul.desktop -O /usr/share/applications/welkompaul.desktop
wget https://vandervlis.nl/files/welkompaul-vnc -O /usr/local/bin/welkompaul-vnc
chmod +x /usr/local/bin/welkompaul-vnc
wget https://vandervlis.nl/files/welkompaul-vnc.desktop -O /usr/share/applications/welkompaul-vnc.desktop

# install SSH server
apt-get -qqy install ssh

# root password instellen:
# echo root:"zxcv" | chpasswd

# Lightdm moet users onthouden
if test -e /etc/lightdm/lightdm.conf; then
  sed -i -e 's/#greeter-hide-users=false/greeter-hide-users=false/g' /etc/lightdm/lightdm.conf
fi

# Lightdm automatisch inloggen
# sed -i -e 's/#autologin-user=/autologin-user=default/g' /etc/lightdm/lightdm.conf

# ntp
#apt-get -qqy install chrony

# grub
# apt -qqy install plymouth plymouth-themes
sed -i -e 's/GRUB_TIMEOUT=5/GRUB_TIMEOUT=1/g' /etc/default/grub
update-grub

# closed Intel firmware als er iwlwifi drivers worden gebruikt:
if test "`lsmod | grep iwlwifi`" != ""; then
  apt-get -qqy install firmware-iwlwifi
fi

# Intel microcode bij een Intel processor:
if test "`cat /proc/cpuinfo | grep -i GenuineIntel`" != ""; then 
  apt-get -qqy install intel-microcode
fi
if test "`lsmod | grep i915`" != ""; then
  apt-get -qqy install firmware-misc-nonfree
fi

# ssh aut-pubkey installeren
if ! test -e /root/.ssh; then mkdir /root/.ssh; fi
if ! test -e /root/.ssh/authorized_keys; then touch /root/.ssh/authorized_keys; fi
if ! grep -q 'auto@laptopp' /root/.ssh/authorized_keys; then
  cd /root/.ssh
  wget https://vandervlis.nl/auto-pubkey -O /root/.ssh/auto-pubkey
  cat /root/.ssh/auto-pubkey >> /root/.ssh/authorized_keys
  chmod 600 /root/.ssh/authorized_keys
  cd
fi

# voor Mate
mkdir -p /etc/skel/.config/dconf/
wget https://vandervlis.nl/files/user -O /etc/skel/.config/dconf/user
wget https://vandervlis.nl/files/mate_settings -O /tmp/mate_settings
user=`grep 1000:1000 /etc/passwd | cut -d: -f1`
sudo -u $user DISPLAY=:0.0 bash -c "dconf load /org/mate/ < /tmp/mate_settings"

# sudo voor user 1000:
adduser $user sudo

# lijst=`ls -1 /home`
# for user in $lijst; do
#  su $user - -c whoami
#  su $user - -c "dbus-launch dconf write /org/cinnamon/desktop/screensaver/lock-enabled false"
#  su $user - -c "dbus-launch dconf write /org/gnome/libgnomekbd/keyboard/layouts \"['us\taltgr-intl', 'us\tintl']\""
#  su $user - -c "xdg-mime default atril.desktop application/pdf"
# done

echo
# echo "Wordt nu gewone gebruiker (met exit) en geef dit commando:"
# echo "dconf load /org/mate/ < /tmp/mate_settings"
echo "Het script werd netjes afgerond, herstart nu de computer"
echo
echo "Of wacht, denk wellicht aan het upgraden van de firmware met:"
echo "apt install fwupd"
echo "fwupdmgr get-updates"
echo "fwupdmgr upgrade"
echo "apt remove fwupd && autoremove"
