Run git clone --depth=1 https://github.com/Efterklang/dotfiles && cd dotfiles to clone the repository and enter the directory.
Install the necessary packages, depending on your package manager
| Pkg Manager | Export | Import | Description |
|---|---|---|---|
| Homebrew | brew bundle dump --describe --force --file="./packages/homebrew/Brewfile" |
brew bundle --file="./packages/homebrew/Brewfile" |
Homebrew package manager for macOS and Linux. |
| Pacman | pacman -Qqe > ./packages/pacman/packages.txt |
pacman -S --needed - < ./packages/pacman/packages.txt |
Pacman package manager for Arch Linux and derivatives. |
| Scoop | scoop export > ./packages/scoop/scoop-packages.json |
scoop import "./packages/scoop/scoop-packages.json" |
Scoop package manager for Windows. |
| Apt-get | apt-mark showmanual > ./packages/apt-get/apt-packages.txt |
cat ./packages/apt-get/apt-packages.txt | xargs sudo apt-get install -y |
Apt package manager for Debian-based systems. |
- Ghostty: A fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration.
- Kitty: A fast, feature-rich, and highly customizable terminal emulator
- WezTerm: Cross-platform terminal emulator
- Windows Terminal: For Windows systems
| Tools | Description |
|---|---|
| bat | A cat(1) clone with wings. |
| delta | A syntax-highlighting pager for git, diff, and grep output |
| eza | A modern replacement for ls. |
| fastfetch | A maintained, feature-rich and performance oriented, neofetch like system information tool. |
| fd | A simple, fast and user-friendly alternative to 'find' |
| lla | blazing fast ls replacement with superpowers |
| ripgrep | ripgrep recursively searches directories for a regex pattern while respecting your gitignore |
| tailspin | 🌀 A log file highlighter |
| zoxide | A smarter cd command. Supports all major shells. |
| Tool | Description |
|---|---|
| btop4win | btop++ for windows |
| fzf | 🌸 A command-line fuzzy finder |
| gitui | Blazing fast terminal-ui for git written in rust. |
| gping | Ping, but with a graph |
| helix | A post-modern modal text editor. |
| lazygit | simple terminal UI for git commands |
| lazyvim | Neovim config for the lazy |
| procs | A modern replacement for ps written in Rust. |
| scooter | Interactive find-and-replace in the terminal Resources |
| television | A cross-platform, fast and extensible general purpose fuzzy finder 📺 |
| tig | Text-mode interface for git. |
| yazi | 💥 Blazing fast terminal file manager written in Rust, based on async I/O. |
- Prompt Theme
- oh-my-posh: A prompt theme engine for any shell.
- starship: The minimal, blazing-fast, and infinitely customizable prompt for any shell.
- Completion:
- Carapace: A multi-shell completion library and binary.
- Inshellisense: IDE style command line auto complete
- Shells
- Fish
- Nushell
- Powershell 7
- Zsh
| Application | Description |
|---|---|
| AutoHotkey | Windows automation scripts |
| Chrome | Browser extensions and settings |
| Clash Verge | A Clash GUI based on Tauri |
| Karabiner-Elements | Keyboard customizer for macOS |
| SketchyBar | A flexible macOS status bar |
| VSCode | Code editor settings and snippets |
| Yasb | A highly customizable status bar for Windows |
MacOS
| Package | Installation Command |
|---|---|
| rclone1 | sudo -v ; curl https://rclone.org/install.sh | sudo bash |
Run ./bin/envs, this will set-up XDG_ and other environment variables.
Some app settings may depend on these environment variables to locate configuration files.
For example, setting XDG_CONFIG_HOME to ~/.config will make applications look for their config files in ~/.config instead of the default locations.
Run install.py, this will create symlinks from the dotfiles to your home directory according to install.conf.yaml
Warning
Back up the folder before installation, or run ./install.py --dry-run (uses dotbot under the hood) to preview changes before applying.
Footnotes
-
rclone mountis not supported on MacOS when rclone is installed via Homebrew,rclone mountis not supported on macOS when installed via Homebrew, so manual installation is recommended for full functionality. ↩