Configuration and customization files to personalize Linux, Windows, and macOS.
This repository contains my personal dotfiles like configurations for software described below.
List of folders and dotfiles in them:
.config/configuration files for the below mentioned programsalacritty- alacritty terminal emulatorbroot- Broot file and directory navigatorCode/User/- Visual Studio Code editorcool-retro-term/- Cool Retro Term Terminal Emulatorcopyq/- copyq Clipboard Managerdoom/- Doom Emacs Frameworkdunst/- dunst Notification daemon, for use with i3emacs/- Emacs editorespanso/- Espanso text expanderfish/- Fish shellfontconfig/conf.d/- Fonts managed by Nix package managerghostty- ghostty terminal emulatorhelix- Helix editorhome-manager- Home Manager using nix for software packagesi3/- i3 Window Manager (WM)i3status/- i3status Status bar for use with i3input-remapper/- input-remapper to change input behaviour like key remappingmprocs/- mprocs to manage parallel and commonly executed processesmpv/- mpv media playernavi/- navi command line cheatsheet toolnushell/- nushell cross platform shellnvim/- neovim editor, kickstart light weight distributionnvim-lazyvim- Lazyvim Neovim setuprofi/- rofi Application launcher, Window switcher for use with i3 and in GNOMEtmux- tmux Terminal Multiplexertodotxt-cli/- todotxt Task manager on command linetopgrade/- topgrade Updater for things like operating systems, software, packages, and othersvlc/- vlc media playerwezterm/- WezTerm Cross platform terminal emulator and multiplexeryazi/- Yazi file managerdolphinrc- Dolphin File Manager settingskdeglobals- KDE KDE Desktop Environment appearance settingsgfold.toml- gfold Track git repositoriesstarship.toml- Starship Cross-shell prompt
.fonts/- Open source fonts.local/share/applications/- Desktop entriesTemplates/- New file templates for GNOME File manager also known as Nautilususr/bin/- Linux scriptsusr/bin-windows/- Windows scriptsother/- Other configuration files not normally stored in user home directoryPowerShell/- PowerShell shellWindowsPowerShell/- Windows PowerShell 5.1 shell
.bash...- Bash shell.gitconfig- Git distributed version control configuration file.inputrc- GNU Readline for command line editing.Xresources,.xinitrc- X Window System configuration files
- Operating systems/distributions:
- Desktop environment: GNOME
- Window manager (WM): i3 tiling WM
- Status bar: i3status
- Shell:
- Bash
- GNU Readline library
- Fish
- Nushell cross platform shell
- PowerShell
- Prompt: Starship
- Bash
-
Version control:
-
Editor:
-
Window switcher/application launcher: rofi
-
Clipboard manager: copyq
-
Terminal:
-
Notification daemon: dunst
-
Personal Task management: todotxt
-
Parallel commands manager: mprocs
-
Updates for software: topgrade
-
Keyboard mapper: input-remapper
-
Package Management: Home Manager using nix
-
File Explorer, Directory Navigator: Broot, Dolphin File Manager, Yazi
-
Text Expander: Espanso
- Most software listed above runs cross-platform on Linux, Windows, and macOS and can use the same configuration files (also called dotfiles). The dotfiles are regularly tested on Linux and Windows using latest stable versions of software.
- For software usually only on Linux / Unix, it can be run on Windows using Windows Subsystem for Linux (WSL), Cygwin, and/or MSYS2 on Windows
There are many ways to manage your dotfiles. I use an Ansible playbook inspired by geerlingguy/mac-dev-playbook and dotfiles Ansible role which installs and configures machines I use from base installation using package managers like apt, dnf, nix, chocolately, and scoop.