Files
setup-script/setupScript.sh
2024-05-07 10:01:26 +00:00

89 lines
4.2 KiB
Bash

#!/bin/bash
# Function to create user if it doesn't exist
create_user() {
if ! id "$1" &>/dev/null; then
echo "Creating user: $1"
useradd -m "$1"
fi
}
# Function to set password for user
set_password() {
echo "Setting password for $1"
echo "$1:$2" | chpasswd
}
# Function to modify GNOME settings
modify_gnome_settings() {
#dconf write /org/gnome/desktop/session/idle-delay 0
#dconf write /org/gnome/desktop/interface/clock-show-seconds true
#dconf write /org/gnome/desktop/interface/show-battery-percentage true
#dconf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'"
#dconf write /org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-type "'nothing'"
#dconf write /org/gnome/mutter/experimental-features "['scale-monitor-framebuffer','variable-refresh-rate']"
#dconf write /org/gnome/desktop/screensaver/idle-activation-enabled false
#dconf write /org/gnome/software/download-updates false
sudo mkdir -p /etc/dconf/db/local.d/locks/
sudo touch /etc/dconf/db/local.d/locks/00-wallpaper
sudo touch /etc/dconf/db/local.d/locks/01-session
sudo touch /etc/dconf/db/local.d/locks/02-interface
sudo touch /etc/dconf/db/local.d/locks/03-power
sudo touch /etc/dconf/db/local.d/locks/04-experimental-features
sudo touch /etc/dconf/db/local.d/locks/05-screensaver
sudo touch /etc/dconf/db/local.d/locks/06-software-update
echo -e "/org/gnome/desktop/background/picture-uri\n/org/gnome/desktop/background/picture-options\n/org/gnome/desktop/background/primary-color\n/org/gnome/desktop/background/secondary-color" | sudo tee -a /etc/dconf/db/local.d/locks/00-wallpaper
echo -e "/org/gnome/desktop/session/idle-delay" | sudo tee /etc/dconf/db/local.d/locks/01-session
echo -e "/org/gnome/desktop/interface/clock-show-seconds\n/org/gnome/desktop/interface/show-battery-percentage\n/org/gnome/desktop/interface/color-scheme\ngtk-theme" | sudo tee /etc/dconf/db/local.d/locks/02-interface
echo -e "/org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-type" | sudo tee /etc/dconf/db/local.d/locks/03-power
echo -e "/org/gnome/mutter/experimental-features" | sudo tee /etc/dconf/db/local.d/locks/04-experimental-features
echo -e "/org/gnome/desktop/screensaver/idle-activation-enabled" | sudo tee /etc/dconf/db/local.d/locks/05-screensaver
echo -e "/org/gnome/software/download-updates" | sudo tee /etc/dconf/db/local.d/locks/06-software-update
sudo touch /etc/dconf/db/local.d/00-wallpaper
sudo touch /etc/dconf/db/local.d/01-session
sudo touch /etc/dconf/db/local.d/02-interface
sudo touch /etc/dconf/db/local.d/03-power
sudo touch /etc/dconf/db/local.d/04-experimental-features
sudo touch /etc/dconf/db/local.d/05-screensaver
sudo touch /etc/dconf/db/local.d/06-software-update
echo -e "[org/gnome/desktop/session]\n\nidle-delay=uint32 0" | sudo tee /etc/dconf/db/local.d/01-session
echo -e "[org/gnome/desktop/interface]\n\nclock-show-seconds=true\nshow-battery-percentage=true\ncolor-scheme='prefer-dark'" | sudo tee /etc/dconf/db/local.d/02-interface
echo -e "[org/gnome/settings-daemon/plugins/power]\n\nsleep-inactive-ac-type='nothing'" | sudo tee /etc/dconf/db/local.d/03-power
echo -e "[org/gnome/mutter]\n\nexperimental-features=['scale-monitor-framebuffer','variable-refresh-rate','parental-controls']" | sudo tee /etc/dconf/db/local.d/04-experimental-features
echo -e "[org/gnome/desktop/screensaver]\nidle-activation-enabled=false" | sudo tee /etc/dconf/db/local.d//05-screensaver
echo -e "[org/gnome/software]\ndownload-updates=false" | sudo tee /etc/dconf/db/local.d//06-software-update
sudo dconf update
}
install_apps() {
flatpak install --system -y app/org.onlyoffice.desktopeditors/x86_64/stable
}
system_update() {
sudo flatpak update -y
sudo rpm-ostree upgrade -y
}
# Check and create users
create_user eleve
create_user prof
create_user admin
# Set passwords
if [ "$(id -u)" = "0" ]; then
set_password prof "IPRprof2398"
set_password admin "Lprsnm4ehk26-"
passwd -d eleve
modify_gnome_settings
install_apps
system_update
else
echo "Password setting and GNOME settings modification require root privileges. Please run as root."
fi