A comprehensive, multi-distro dotfiles and system bootstrap configuration. Designed to set up a premium development environment on Fedora, Arch Linux, and OpenSUSE.
- Multi-Distro Support: Tailored scripts for Fedora, Arch, and OpenSUSE.
- Dotfiles Management: Powered by Dotbot (installed via
binary-dist.sh). - Dev Environment: Deploys a full stack: Zsh (Oh-My-Zsh), Neovim, Tmux (TPM), Go, Rust, Java (SDKMan).
- Desktop Rice: Configuration for Hyprland, Gnome extensions, stunning wallpapers, and Alacritty/Kitty/WezTerm theming.
.system-bootstrap/
├── .files/ # Dotfiles configuration (Zsh, Neovim, Tmux, etc.)
│ ├── arch+hypr/ # Arch-specific configs
│ ├── fedora/ # Fedora-specific configs
│ ├── opensuse/ # OpenSUSE-specific configs
│ └── install.conf.yaml # Main Dotbot configuration
├── scripts/ # Installation & setup scripts
│ ├── arch/ # Arch installation steps (00-03)
│ ├── fedora/ # Fedora installation steps (00-02)
│ ├── opensuse/ # OpenSUSE installation steps (00-02)
│ ├── binary-dist.sh # Installs binaries (Dotbot, Yazi, Neovim, etc.)
│ ├── cli-tools.sh # Installs CLI tools (Rust, Python, Node, etc.)
│ └── ... # Common setup scripts
├── assets/ # Wallpapers and resources
├── Justfile # Command runner for orchestration
└── README.md # This file
- Git: To clone the repo.
- Just: Recommended runner (optional, can run scripts manually).
- Fedora:
sudo dnf install just - Arch:
sudo pacman -S just - Suse:
sudo zypper install just
- Fedora:
Clone the repository:
git clone --recursive https://github.com/limpid-kzonix/system-bootstrap.git ~/.system-bootstrap
cd ~/.system-bootstrapView all available commands:
justTypical Workflow:
-
System Setup:
just configure-system # Setup git, docker, time -
Distro Packages (Choose your fighter):
just fedora-step-0 # Update & install core repo just fedora-step-1 # Install core packages # ...
Or for Arch:
just arch-install
-
Cross-Platform Tools:
just install-cli-tools # Zsh, fzf, etc. just install-binaries # Dotbot, Yazi, Neovim, LazyGit, Zellij, etc. just install-zsh-plugins # Syntax highlighting, autosuggestions just install-gnome-extensions # If using Gnome just install-fonts # Nerd Fonts just install-flatpaks # Desktop apps just install-dev-tools # Go, Rust, Java (SDKMan)
-
Link Dotfiles:
just apply-dotfiles
If you prefer to run scripts one-by-one (e.g., to handle reboots), navigate to scripts/ and execute them.
Fedora Example:
./scripts/fedora/00-system-update.sh
# Reboot if kernel updated
./scripts/fedora/01-packages.sh
./scripts/configurations.sh
./scripts/cli-tools.sh
./scripts/binary-dist.sh- Zsh: Custom detailed configuration with Oh-My-Zsh and plugins.
- Neovim: Lua-based configuration in
.files/nvim. - Terminal: Unified themes for Alacritty, Kitty, and WezTerm.
- Hyprland: (Arch only) Tiling window manager setup in
.files/arch+hypr.
- Docker: The
configure-systemscript adds your user to thedockergroup. You must log out and log back in for this to take effect. - Reboots: Some package installation scripts (kernel updates, drivers) may require a reboot.
MIT

