My personal collection of dotfiles. Use at your own risk ;)
The structure of this repository mirrors the structure of the files in your home directory.
.zshrcis located at the root of the repo, just as it would be at the root of your home directory.- Configuration files that typically live in
~/.configare placed in the.configfolder in this repo.
-
Clone this repository:
git clone https://github.com/ryanreece/dotfiles.git cd dotfiles -
Make the install script executable:
chmod +x install_dotfiles.sh
-
Run the installation script:
./install_dotfiles.sh
The installation script will create backups of existing files before creating symlinks.
The installation script creates symlinks from your home directory to the files in this repository. This approach has several benefits:
- Central Management: You can manage all your configuration files in one place (this repo).
- Version Control: Your configurations are version-controlled, allowing you to track changes and revert if necessary.
- Easy Updates: When you update a file in this repo, the change is immediately reflected in your system because of the symlinks.
- Portability: It's easy to set up your preferred environment on a new machine by cloning this repo and running the install script.
To add new dotfiles to be managed by this repo:
- Add the file to this repository, maintaining the correct directory structure.
- Edit the
install_dotfiles.shscript and add the file path to thedotfilesarray.
install_dotfiles.sh links ~/.config/sway/config.d to this repository, backing
up an existing directory first. The Fedora Sway layered config loads these
drop-ins automatically; custom configs must include them explicitly.
The drop-ins configure Alacritty for Super+Enter and Rofi for Super+Space, Super+BackSpace for
vertical splits, Super+T for tabs, and Super+Shift+S for Flameshot screenshots.
Flameshot is installed by the day-zero Ansible desktop role. Monitor scaling is 125% for the specific
Dell display identified in 99-monitor-scaling.conf; edit that file for other
monitors. Press Super+Shift+C after editing to reload Sway. New files added to
this directory also live in the repo; use Git to commit them.
Waybar is placed at the bottom by ~/.config/waybar/config.jsonc, which the
installer links to this repository. The override inherits Fedora's packaged
/etc/xdg/waybar/config.jsonc to retain its modules and layout. On other
systems, adjust the include path to the packaged Waybar configuration.
After editing, run pkill -USR2 -x waybar to reload Waybar.
Waybar and Rofi use the City Lights palette from Alacritty: a dark blue-gray
background, blue selection, cyan accents, and green/yellow/red status colors.
The installer links .config/waybar/style.css, .config/rofi/config.rasi, and
.config/rofi/city-lights.rasi into the user configuration. The fonts use
JetBrainsMono Nerd Font Mono, installed by the day-zero desktop font task.
Waybar's colored text identifies modules, while warning and critical states
remain yellow and red. Tray application icons retain their own icon colors.
Edit the CSS for Waybar or city-lights.rasi for Rofi to adjust the palette.
Reload Waybar with pkill -USR2 -x waybar; Rofi reads the theme on its next launch
with Super+Space.
Super+C launches native rofi-calc directly on Sway, with results updating as you type. Enter adds the current result to history; Escape closes the window. The plugin uses its own default keybindings and behavior. There is no custom calculator script or clipboard wrapper. Super+Shift+Space keeps its default floating-mode binding. Open Qalculate from the application launcher for the GUI.
The day-zero qalculate tag installs Qalculate GTK, its CLI engine, Rofi,
and unmodified upstream rofi-calc. On Fedora and Debian, it builds a pinned
plugin into ~/.local/lib/rofi; Arch uses its packaged plugin. The shortcut
adds the user-local plugin directory through ROFI_PLUGIN_PATH, while keeping
Rofi's system plugin search path. Rerun the tag after upgrading Rofi to rebuild
against the installed headers.