Declarative machine setup for Fedora using mise.
Development tools, CLI utilities, repositories, and applications:
| Tool / Group | Description |
|---|---|
eza |
Modern ls replacement with icons |
zoxide |
Smarter cd |
starship |
Cross-shell prompt |
fzf |
Fuzzy finder |
bat |
cat with syntax highlighting |
ripgrep, fd-find |
Fast grep / find replacements |
neovim |
Vim-fork focused on extensibility |
chromium, google-chrome-stable |
Browsers |
code |
Visual Studio Code editor |
podman, podman-compose, podman-docker |
Native Fedora container engine and CLI emulation |
ghostty |
Highly performant GPU-accelerated terminal emulator |
fastfetch, tmux, htop, jq, tree, vim |
CLI essentials |
@virtualization |
Virtualization stack (qemu, libvirt, etc.) |
@development-tools |
Compilers, make, etc. |
| Tool | Version |
|---|---|
| Node.js | LTS |
| Bun | latest |
| Java | 17 |
| Swift | latest |
| ast-grep | latest |
Symlinked/configured:
.config/fish/config.fish— fish shell configuration with path, aliases, and tool integrations.gitconfig— Git configuration.config/starship.toml— Starship prompt theme
- Login shell set to
/usr/bin/fish - Starship prompt, zoxide, fzf, and mise integrations.
- Pure Fish configuration with no heavy plugin frameworks required (Fish features built-in autosuggestions and syntax highlighting).
# 1. Install mise
curl https://mise.run | sh
# 2. Activate mise in current shell
eval "$(~/.local/bin/mise activate bash)"
# 3. Clone this repo
git clone https://github.com/jensdev/mise-bootstrap.git
cd mise-bootstrap
# 4. Run bootstrap
mise bootstrapThat's it. mise bootstrap will:
- Run the
pre-packageshook (setup-repos.sh) to configure external repositories (RPM Fusion, VS Code, Chrome, and COPR). - Install all system packages via
dnf(including browsers, virtualization, Podman, and utilities). - Symlink dotfiles to
~. - Set login shell to
/usr/bin/fish. - Install dev tools (Node.js, Bun, Java, Swift, ast-grep).
- Run the
bootstraptask (post-bootstrap.sh) to:- Install Nerd Fonts.
- Install and symlink Android Studio.
- Enable and start the
libvirtdsystem service and the user-levelpodman.socketservice. - Set up virtualization user group memberships (
libvirt,kvm). - Configure Flatpak and install applications (Slack, Spotify, Insomnia, Podman Desktop, Gearlever).
Log out and back in (or run fish) to start using your new shell.
- Add packages: Edit
[bootstrap.packages]inmise.toml - Add dotfiles: Place files in
dotfiles/and add entries to[system.files] - Add dev tools: Edit
[tools]inmise.toml - Re-run:
mise bootstrapis idempotent — safe to run again