Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add descriptions and bash script for Ubuntu setup and customization #278

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
114 changes: 101 additions & 13 deletions docs/10-lab/18_resources/18.10.workstation.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,23 +21,111 @@ The setup for a typical workstation includes the following:

The following apps are pre-installed based on a shell script:

- First-steps file (on desktop), covering git config, ssh, gpg, github account, and a link to the handbook (onboarding section)
- Instead of a pre-installed E-Mail client, we recommend the web interface? (Thunderbird currently requires a paid owl extension)
- Browser: Handbook as the default page
- Back-in-time
- Keepass
- Git / Docker
- Paper Docker container
- Obsidian (with chrome plugin)
- Visualstudio
- Python / R / Jupyter
- Zoom
- Zotero (with chrome plugin)
- General
- First-steps file (on desktop), covering git config, ssh, gpg, github account, and a link to the handbook (onboarding section)
- Instead of a pre-installed E-Mail client, we recommend the web interface? (Thunderbird currently requires a paid owl extension)
- Browser: Handbook as the default page
- Paper Docker container
- Via apt
- Back-in-time
- Docker Engine
- Git
- Python
- R
- Visual Studio Code
- Zoom
- Zotero (with chrome plugin)
- Via flatpak
- LibreOffice
- KeepassXC
- Obsidian (with chrome plugin)
- OBS Studio
- Via Pip
- Jupyter

**Shell script**:

```
```bash

# Remove snap
# list all snaps
snap list

# some snaps are dependent on other snaps, snap will tell you which one shall be removed first
## first, remove all packages with Notes "-"
sudo snap remove --purge firefox
sudo snap remove --purge firmware-updater
sudo snap remove --purge gnome-3-38-2004
sudo snap remove --purge gnome-42-2204
sudo snap remove --purge gtk-common-themes
sudo snap remove --purge snap-store
sudo snap remove --purge snapd-desktop-integration

## second, remove all packages with Notes "base"
sudo snap remove --purge bare
sudo snap remove --purge core20
sudo snap remove --purge core22

## last, remove all packages with Notes "snapd"
sudo snap remove --purge snapd

# remove the snapd package itself, including configuration files
sudo apt purge snapd
sudo apt remove --purge gnome-software-plugin-snap
#sudo apt autoremove --purge snapd gnome-software-plugin-snap

# remove residual directories
rm -rf ~/snap
sudo rm -rf /snap
sudo rm -rf /var/snap
sudo rm -rf /var/lib/snapd
sudo rm -rf /var/cache/snapd/

# prevent snapd to be installed again
sudo apt-mark hold snapd

# prevent Ubuntu from automatically reinstalling snapd in the future
cat <<EOF | sudo tee /etc/apt/preferences.d/nosnap.pref
# To prevent repository packages from triggering the installation of Snap,
# this file forbids snapd from being installed by APT.
# For more information: https://linuxmint-user-guide.readthedocs.io/en/latest/snap.html

Package: snapd
Pin: release a=*
Pin-Priority: -10
EOF

#--------------------------------------------------------------------------------------------#

# disable all pre-installed (Ubuntu) gnome-extensions to enhance system stability
gnome-extensions disable [email protected]
gnome-extensions disable [email protected]
gnome-extensions disable [email protected]
gnome-extensions disable [email protected]

## restore maximize and unmaximize shortcut in Ubuntu 24.04 (by default deactivated due to [email protected])
gsettings set org.gnome.desktop.wm.keybindings maximize "['<Super>Up']"
gsettings set org.gnome.desktop.wm.keybindings unmaximize "['<Super>Down']"

#--------------------------------------------------------------------------------------------#

# set up flatpak
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
sudo apt install gnome-software-plugin-flatpak
# sudo reboot

#--------------------------------------------------------------------------------------------#

# install GUI apps from flathub
flatpak install flathub md.obsidian.Obsidian
flatpak install flathub com.obsproject.Studio
flatpak install flathub org.libreoffice.LibreOffice
flatpak install flathub org.keepassxc.KeePassXC

#--------------------------------------------------------------------------------------------#


# Create a default folder structure
```

Expand Down