dotfiles-openSUSE
zypper with the best dependency solver of the bunch. Packman, AppArmor, Btrfs/snapper, Tumbleweed (dup) + Leap (up) aware.
Highlights
- zypper + Packman
- Btrfs / snapper
- AppArmor
- Tumbleweed + Leap
How it fits
The OS-native layer — Package manager, paths, clipboard — what changes with the OS. It builds on Core, which is vendored
into its core/ directory. See the three-layer model for how the
layers compose.
Getting started
git clone https://github.com/dotgibson/dotfiles-openSUSE ~/dotfiles-openSUSE
cd ~/dotfiles-openSUSE
./bootstrap.sh
exec zshCore is already vendored in a clone. Flags: --links-only, --no-flatpak.
What actually bites
- Two flavors, different update command — Tumbleweed (rolling) upgrades with zypper dup (zdup); Leap (stable) uses zypper up (zup). Get it wrong and you either do not update or you half-update. bootstrap only refreshes metadata — the choice stays yours.
- The best solver of the set — Lean on it. On a Tumbleweed dup, vendor-change / package-split prompts are normal — read them, do not reflexively decline.
- AppArmor + Btrfs rollback — AppArmor (aa-status/aa-complain/aa-enforce) is the default MAC, not SELinux. Rollback is Btrfs + snapper (snaps, snapper undochange) snapshotted around each transaction — not package history.
- Packman for codecs — openSUSE's analog to RPM Fusion. Not auto-added (the URL differs Tumbleweed-vs-Leap and it is not needed for the CLI stack); add it manually if you want codecs.