Contains my configurations for:
bash/.bashrcandbin/setup.sh- Shared functions are found in
lib/shared.sh - Colour definitions and messaging functions are found in
lib/colours.sh
fish/config.fishandbin/setup.fish- Fish utilities are in
lib/shared.fishandlib/colours.fish
hypr/hyprland.conf&hyprpaper.conf
zellij-config.kdlautostart/- Minimal desktop files used to disable the default autostart of
blueman-applet,nm-appletandspotify-launcher. These applications are started from Hyprland instead.
- Minimal desktop files used to disable the default autostart of
- Spotify launcher:
spotify-launcher.conf - Starship prompt:
starship.toml - Atuin shell history:
atuin/config.toml
At the moment this is a WIP and is intended to only be used on Arch Linux.
Before running, ensure pacman is upgraded with pacman -Syu.
Run ./dotfiles.sh setup --shell bash to symlink the configuration files using Bash or --shell fish for Fish. You can pass multiple shells as a comma separated list (for example --shell bash,fish). When both shells are specified the Bash script is used.
Use the --dry-run flag to preview the actions without modifying any files.
An install script is provided for Arch Linux systems. It installs the packages
listed in packages/arch.txt and packages/aur.txt and then runs the
appropriate setup script.
./dotfiles.sh install --shell bash # Install packages and configure using Bash
./dotfiles.sh install --shell bash,fish # Install using Bash when both shells are requested
./dotfiles.sh install --shell fish --dry-run # Preview actions without making changes using Fishnvim-dap launches gdb by default when debugging C or C++. On Linux the
command gdb is used directly. Windows users can fall back to a MinGW
installation (for example C:\mingw64\bin\gdb.exe).
The GDB_PATH environment variable overrides the executable path on any
platform.
This project is dual-licensed under the MIT License or the Unlicense. See LICENSE for details.
Tests are executed inside a Docker container based on Arch Linux. To run them locally, ensure Docker is installed and then execute:
./scripts/run-tests.shThis script builds the container defined in the Dockerfile and runs bats.
The same container is used in continuous integration and will be executed
automatically on every push or pull request.
The tests/ folder also contains a shellcheckrc configuration which can be
passed to ShellCheck via --shellcheckrc tests/shellcheckrc.