My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Go to file
Donovan Glover a4c5c4ee05
git: Remove hard-coded diff-highlight colors
This makes pywal themes more likely to work with diff-so-fancy.
2023-04-25 22:13:58 -04:00
.archlinux chromium: Remove https everywhere 2022-12-15 09:44:29 -05:00
alacritty alacritty: Fix decorations_theme_variant capitalization 2023-04-23 20:31:06 -04:00
bspwm bspwm: Update bspwmrc 2023-04-24 00:59:45 -04:00
code code: Update settings.json 2023-04-23 23:03:33 -04:00
dual-function-keys meta: Add dual-function-keys 2023-01-04 18:20:04 -05:00
dunst meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
editorconfig editorconfig: Indent markdown with tabs 2023-03-19 14:12:17 -04:00
fcitx meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
feh meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
fish fish: Increase rg limit 2023-04-23 20:31:52 -04:00
git git: Remove hard-coded diff-highlight colors 2023-04-25 22:13:58 -04:00
gpg gpg: Simplify gpg.conf 2023-04-24 01:03:41 -04:00
gtk meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
hyprland hyprland: Update config 2023-04-23 22:11:50 -04:00
kitty kitty: Slightly decrease background opacity 2023-03-23 08:29:22 -04:00
librewolf meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
lunarvim meta: Add back remaining dotfiles 2023-03-19 18:26:04 -04:00
mozc meta: Add mozc 2022-03-23 20:59:41 -04:00
mpd meta: Add visualization support 2023-03-21 09:35:36 -04:00
mpv mpv: Don't show progress on seek 2023-01-07 00:58:13 -05:00
ncmpcpp ncmpcpp: Add cross-fading support 2023-03-21 09:36:25 -04:00
neofetch meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
neovim stow: Split neovim into separate package 2018-11-23 01:47:39 -05:00
paru paru: Enable SudoLoop 2023-01-05 02:27:24 -05:00
picom picom: Add more opacity rules 2023-04-23 20:45:28 -04:00
polybar meta: Add back remaining dotfiles 2023-03-19 18:26:04 -04:00
qutebrowser meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
ranger ranger: Show hidden files 2023-04-23 20:36:51 -04:00
river meta: Add river 2023-04-24 15:35:45 -04:00
rofi rofi: Don't make rofi a normal window 2023-04-23 20:44:23 -04:00
ssh-agent docs: Update READMEs for ssh-agent, vim, and xmodmap 2018-11-23 00:27:58 -05:00
starship Revert "starship: Add date and time" 2022-12-26 22:24:10 -05:00
swayidle meta: Add back remaining dotfiles 2023-03-19 18:26:04 -04:00
swaylock meta: Add back remaining dotfiles 2023-03-19 18:26:04 -04:00
sxhkd sxhkd: Remove super+tab 2023-04-11 18:32:29 -04:00
thunar meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
tig meta: Add tig package 2018-12-06 01:42:53 -05:00
tint2 tint2: Call fullscreen.sh with wal.sh 2023-04-24 01:08:35 -04:00
tmux tmux: Use minimalist layout 2022-02-26 14:30:14 -05:00
vim vim: Remove coc.nvim 2023-04-11 20:11:39 -04:00
wal wal: Simplify done.sh 2023-04-24 01:09:11 -04:00
waybar waybar: Update styles 2023-04-23 21:50:36 -04:00
xcursor meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
xinit meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
xresources meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
zathura meta: Revert recent dotfile removals 2023-03-19 18:02:26 -04:00
.editorconfig meta: Add symlink to .editorconfig 2018-12-07 19:25:12 -05:00
.gitattributes gitattributes: Add mpv scripts to vendored list 2022-08-01 12:39:13 -04:00
.gitignore misc: Add aur build directory to .gitignore 2018-12-07 15:26:05 -05:00
CHANGELOG.md meta: Change repository name from .files to dotfiles 2018-12-28 14:00:25 -05:00
CONTRIBUTING.md misc: Small fixes 2018-12-07 18:47:38 -05:00
LICENSE meta: Update copyright years 2022-01-01 20:55:51 -05:00
Makefile Makefile: Decrease stow verbosity to 1 2022-09-28 12:58:48 -04:00
README.md docs: Update README 2022-07-29 14:14:17 -04:00

.files

These are my dotfiles. As of 2022, my operating system of choice remains to be Arch Linux. I also like Fedora, but I don't use it for anything serious.

NOTE: This readme is currently WIP and may change drastically. You are free to study and take whatever you want from these dotfiles, but avoid executing any commands that change a lot of stuff.

History

I have been using GNU/Linux since 2012 and Arch Linux since 2017. My setup was originally i3 before I switched to bspwm. In 2021, I added Sway, although I like switching between GNOME and Plasma as well.

In 2022, I installed Gentoo, but returned to Arch Linux shortly thereafter. For an explanation on why, as well as some other design choices, read the Technical section.

Old Screenshots

Over time my tastes in desktop environments have changed. For nostalgic purposes, here is a collection of screenshots of my usage of GNU/Linux over time.

2018

Screenshot of Tari, my Arch Linux setup.

Screenshot of Tari with Code and the wal color scheme.

2022

Features

The biggest advantage my dotfiles have is a consistent setup between GTK and Qt applications across multiple window managers. Making GUIs look nice on bspwm was a major task for me, and I'm satisfied with the result. Qt applications also work well under GNOME, with a consistent theme if you're using Arc for everything.

Usage

Since these are my personal dotfiles, they are tailored specifically to my use case.

There are 3 different ways you can use this repository.

  1. Use my dotfiles as inspiration and only install what you need
  2. Install all my dotfiles on your computer, a server, or something else
  3. Replicate my entire Arch Linux system with minimal effort

1. Use my dotfiles as inspiration, and only install what you need

My dotfiles are managed with GNU Stow. Dotfiles are separated based on program, and each directory contains relevant information about those dotfiles.

In the event that you want to try out some of my dotfiles, I wrote a Makefile that makes installing and uninstalling dotfiles easy. For example, to only install vim dotfiles use:

make install package=vim

Similarly, if you want to remove the vim dotfiles you just installed, use:

make uninstall package=vim

2. Install all my dotfiles on your computer, server, etc.

If you want to use all the dotfiles in this repository, use:

make install

Note that if a dotfile already exists then stow won't override it, so this works best on new user accounts that don't have any dotfiles on them yet.

3. Replicate my entire system with minimal effort

Technical

Throughout my journey with GNU/Linux, I learned a lot about how computer systems work, including how to use systemd, networking, package management, filesystems, configuration files, and other cool stuff. I also had to deal with a lot of edge cases when it came to different versions of software, such as certain features not working due to conflicting library dependencies.

Previously I used media keys for media keybinds. Since I now use super for those commands, keybinds should work on any machine.

Support and contributing

If you have any questions about my dotfiles, feel free to open an issue. You can also contribute by submitting a pull request.