Skip to content

dotgibson/dotfiles-Fedora

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

197 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎩 dotfiles-Fedora

Fedora β€” the template layer. The Fedora layer (dnf + RPM Fusion) β€” the template the other Linux repos are stamped from.

dnf Β· zsh Β· nvim Β· tmux

showcase Linux


The OS-native layer for Fedora. Core (zsh/tmux/nvim/git) is vendored under core/ from dotfiles-core; this repo adds only what is genuinely Fedora β€” dnf, RPM Fusion, Flathub, Wayland clipboard, SELinux helpers.

This repo is also the template the other distro repos are stamped from: swap the package manager and clipboard backend, keep the structure.

Install (fresh Fedora)

git clone <you>/dotfiles-Fedora ~/dotfiles-Fedora
cd ~/dotfiles-Fedora
# one-time: vendor Core (skip if the repo already contains core/)
git subtree add --prefix=core <you>/dotfiles-core main --squash
./bootstrap.sh
exec zsh

Flags: --links-only (re-link without touching dnf), --no-flatpak.

Layout

bootstrap.sh          dnf provision + Core/OS symlink wiring (idempotent)
install/packages.txt  dnf package list (modern CLI stack)
os/fedora.zsh         OS-native shell layer -> symlinked to ~/.config/zsh/os.zsh
ssh/config            hardened SSH client config -> ~/.ssh/config (keys never tracked)
core/                 vendored from dotfiles-core (git subtree; do not hand-edit)

Load order in .zshrc: core/tools β†’ core/aliases β†’ core/functions β†’ core/fzf β†’ core/bindings β†’ core/plugins β†’ core/op β†’ os/fedora β†’ local.

Fedora specifics baked in

  • dnf5 is the default engine since Fedora 41; the dnf command is unchanged. dnf-undo rolls back the last transaction β€” useful after a bad upgrade.
  • RPM Fusion (free + nonfree) is enabled for codecs and extra packages.
  • Clipboard is Wayland-first (wl-copy/wl-paste), shimmed to pbcopy/ pbpaste so your Mac muscle memory carries over; X11 xclip fallback for SSH.
  • SELinux is enforcing by default. se-restore, se-denials, and se-why helpers are included β€” worth knowing well, since SELinux context issues are a common real-world troubleshooting and privilege-escalation surface.
  • fd is named fd here (not fdfind as on Debian); core/zsh/tools.zsh resolves the name automatically, so nothing breaks across distros.
  • starship / atuin / yazi aren't reliably in Fedora repos, so bootstrap.sh installs them from upstream to match the other distro repos exactly.

About

🎩 The Fedora layer (dnf + RPM Fusion) of a cross-platform dotfiles system β€” the template the other Linux repos are stamped from.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages