Setting up my Debian and GNOME DE
2024-11-24 08:04
I have found Debian 12 bookworm + GNOME 43.9 a delight to set up. No major issues. Although the apt package repository didn't have all the software I was after, I could easily install stand-alone binaries, or in one case another repository which hosts the binary.
These are my notes as I went along for future reference. There are some minor things left out like appearance settings, pulling some scripts across, keyboard bindings yada yada. I'm finding my recent distro hopping has taught me a great deal. Plan on doing this regularly to keep me engaged with my tools.
Add user to sudo group
$ su
$ sudo usermod -aG sudo [username]
$ groups [username] # check user has been added
$ exit
Enable firewall
$ sudo ufw enable
$ sudo ufw logging off
$ sudo ufw status verbose
Set up my usual folders
$ mkdir bin repos scripts src sync templates
Install Azlux's package repository
For tut.
$ echo "deb [signed-by=/usr/share/keyrings/azlux-archive-keyring.gpg] http://packages.azlux.fr/debian/ stable main" | sudo tee /etc/apt/sources.list.d/azlux.list
$ sudo wget -O /usr/share/keyrings/azlux-archive-keyring.gpg https://azlux.fr/repo.gpg
$ sudo apt update
Install available packages through apt
$ sudo apt install xsel feh git syncthing amfora tut buku vlc ruby-full
ruby-full is so I can install neocities CLI via sudo gem install neocities
Install software from binaries
Configure git
See Setting up Git (The Odin Project) for a good how-to.
$ git config --global user.name "Your Name"
$ git config --global user.email "yourname@example.com"
$ git config --global init.defaultBranch main
$ git config --global pull.rebase false
And confirm:
$ git config --get user.name
$ git config --get user.email
Create SSH key to link with a git hosting service:
$ ssh-keygen -t ed25519
$ cat ~/.ssh/id_ed25519.pub
Update .bashrc
export EDITOR=hx
function y() {
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
yazi "$@" --cwd-file="$tmp"
if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
builtin cd -- "$cwd"
fi
rm -f -- "$tmp"
}
alias cls='clear'
alias g='amfora'
alias m='tut'
alias z='zellij'
alias gg='lazygit'
alias note='notetaker.sh'
alias blog='blog.sh'
Disable auto-load of overview mode
Install No overview at start-up extension.
Load zellij in full-screen mode on start-up
Create a file ~/.config/autostart/zellij-start.desktop
and input the following text:
[Desktop Entry]
Name=Zellij Fullscreen
Exec=gnome-terminal --full-screen -- "zellij"
Type=Application
Keywords=terminal;
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Comment=Launch Zellij in fullscreen terminal at startup
Zellij Fullscreen will now appear in the Tweaks "Startup Applications" list, toggled on as set by X-GNOME-Autostart-enabled=true
.
Remove tab grouping
In Settings --> Keyboard --> Keyboard Shortcuts --> View and Customize Shortcuts --> Navigation set Switch windows keybind to ALT-TAB. This will overwrite the allocation of ALT-TAB to Switch applications which isn't shown.
Next steps
- Setup python environment. So many IDE options so a bit unsure which to go for. Recent experience with Spyder has been nice, but I may be able to get away with something a bit lighter. Might ask the community.
📸