This is a selection of settings and preferences for my OpenSUSE Aeon Desktop installation.
In most cases the given instructions should also work on MicroOS and Tumbleweed.
If you want to run the latest kernel, see https://kernel.opensuse.org/master.html for details:
sudo zypper addrepo https://download.opensuse.org/repositories/Kernel:HEAD/standard/Kernel:HEAD.repo
sudo zypper refresh
zypper lr
To install a version of the master
branch:
sudo transactional-update -i pkg install kernel-default-6.14~rc3 kernel-default-devel-6.14~rc3
systemctl reboot
See the OpenSUSE Wiki for details:
You may get conflicts, it seems to work fine when you choose to ignore the missing library or package.
On Aeon you may need to remove the --root-pw
option for the mokutil --import
command, and give a password manually instead.
To built the latest drivers on the master
kernel, see https://forums.developer.nvidia.com/t/570-release-feedback-discussion/321956/70?page=3:
sudo transactional-update shell
cd /usr/src/kernel-modules/nvidia-570.86.16-default
<patch>
exit
It's important to reboot first, afterwards reinstall the master
kernel (see instructions above).
Enable the fstrim
when using a SSD/NVme-device timer:
sudo systemctl enable fstrim.timer --now
If you are using encryption on a NVMe/SSD, you may want to improve performance by disabling the workqueue and allowing discards:
sudo cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --allow-discards --persistent refresh aeon_root
See https://wiki.archlinux.org/title/Dm-crypt/Specialties#Disable_workqueue_for_increased_solid_state_drive_(SSD)_performance for details.
If you are using Btrfs, you may want to configure https://github.com/kdave/btrfsmaintenance:
sudo nano /etc/sysconfig/btrfsmaintenance
Enable the timers:
sudo systemctl enable btrfs-balance.timer btrfs-defrag.timer btrfs-scrub.timer btrfs-trim.timer --now
To enable zwramswap:
sudo systemctl enable zramswap.service --now
It is discourage to install software on the root filesystem, see the Aeon Wiki for details:
Depending on your hardware, you may need to enable/disable different flags. See https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/gpu/vaapi.md#vaapi-on-linux for details.
Enable and use rootless containers:
- https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md
- https://wiki.archlinux.org/title/Podman#Rootless_Podman
To learn more about Podman Quadlet, the following resources may be useful:
- https://docs.podman.io/en/latest/markdown/podman-systemd.unit.5.html
- https://www.redhat.com/sysadmin/quadlet-podman
- https://mo8it.com/blog/quadlet/
To enable linger, e.g. keep containers running when logged out:
loginctl enable-linger $USER
Aeon doesn't come with any firewall. Instead you should control ports and services using Podman Quadlet and containers.
It's still possible to install firewalld
, but this may cause Flatpak and container network issues.
See the following guides:
- flathub/com.visualstudio.code#426 (comment)
- https://github.com/jorchube/devcontainer-definitions
- VSCodium/vscodium#1487
You may want to use Flatseal to set the following overwrites:
- Add to
Other files
:xdg-run/podman:ro
- Add to
Other files
:/tmp:rw
To enable Wayland support:
flatpak override --user --socket=wayland --socket=fallback-x11 --env=ELECTRON_OZONE_PLATFORM_HINT=auto com.visualstudio.code
See flathub/com.visualstudio.code#471 for details.
To apply opacity (credits):
dconf read /org/gnome/Ptyxis/default-profile-uuid
dconf write /org/gnome/Ptyxis/Profiles/{profile-uuid}/opacity 0.95
Install fish in the OpenSUSE distrobox container:
sudo zypper install fish ibm-plex-mono-fonts ibm-plex-sans-fonts ibm-plex-serif-fonts
To add fish path lookups:
fish_add_path ~/.local/bin ~/.config/yarn/global/node_modules/.bin
To disable greeting (welcome message):
set -U fish_greeting
Follow https://starship.rs/guide/ to setup Starship.
See https://itsfoss.com/flatpak-app-apply-theme/ instructions for Flatpak theming.
Use Refine to apply customization or dconf-editor - look up keys in /org/gnome/
.
Icon Theme (GTK - non-root): https://github.com/PapirusDevelopmentTeam/papirus-icon-theme
Cursor Theme: https://github.com/phisch/phinger-cursors
Fonts: Inter + FiraCode Nerd Font