Go to file
2024-12-05 21:58:46 +00:00
.github/workflows change update to saturday 2024-10-07 21:00:45 -04:00
apps move all files to new nixfmt rfc 2024-04-20 09:42:06 -04:00
colorscheme move all files to new nixfmt rfc 2024-04-20 09:42:06 -04:00
disks apply new nix fmt specification 2024-04-13 09:03:44 -04:00
docs include SSL CA in docs 2024-04-02 07:59:04 -07:00
hosts add immich 2024-12-05 21:58:46 +00:00
misc introduce arrow host and deployment 2024-03-24 13:16:20 -04:00
modules add immich 2024-12-05 21:58:46 +00:00
overlays fix osc with new update 2024-11-23 10:52:42 -07:00
private save letsencrypt key for acme 2024-08-17 08:55:03 -04:00
templates remove flake-utils from poetry template 2024-06-05 13:54:13 -04:00
windows autohotkey v2 for windows 2024-06-02 08:08:05 -04:00
.envrc more flakiness 2022-04-27 09:23:26 -04:00
.gitignore introduce arrow host and deployment 2024-03-24 13:16:20 -04:00
.stylua.toml refactor colors and options 2022-11-02 21:29:14 -04:00
flake.lock flake.lock: Update 2024-11-30 03:53:18 +00:00
flake.nix add immich 2024-12-05 21:58:46 +00:00
LICENSE add MIT license 2022-07-27 19:03:31 -04:00
README.md fix markdown tables format in github 2024-06-19 11:02:18 -06:00

System Configurations

This repository contains configuration files for my NixOS, macOS, and WSL hosts.

They are organized and managed by Nix, so some of the configuration may be difficult to translate to a non-Nix system.

System Features

Feature Program Configuration
OS NixOS Link
Display Server X11 Link
Compositor Picom Link
Window Manager i3 Link
Panel Polybar Link
Font Victor Mono Link
Launcher Rofi Link

User Features

Feature Program Configuration
Dotfiles Home-Manager Link
Terminal Kitty Link
Shell Fish Link
Shell Prompt Starship Link
Colorscheme Gruvbox Link
Wallpaper Road Link
Text Editor Neovim Link
Browser Firefox Link
E-Mail Aerc Link
File Manager Nautilus Link
PDF Reader Zathura Link
Video Player mpv Link

macOS Features

Feature Program Configuration
Keybinds Hammerspoon Link

Diagram

Diagram


Unique Configurations

This repo contains a few more elaborate elements of configuration.

  • Neovim config generated with Nix2Vim and source-controlled plugins, differing based on installed LSPs, for example.
  • Caddy JSON file (routes, etc.) based dynamically on enabled services rendered with Nix.
  • Grafana config rendered with Nix.
  • Custom secrets deployment similar to agenix.
  • Base16 colorschemes applied to multiple applications, including Firefox userChrome.

Installation

Click here for detailed installation instructions.

Neovim

Try out my Neovim config with nix:

nix run github:nmasur/dotfiles#neovim

Or build it as a package:

nix build github:nmasur/dotfiles#neovim

If you already have a Neovim configuration, you may need to move it out of ~/.config/nvim or set XDG_CONFIG_HOME to another value; otherwise both configs might conflict with each other.

Flake Templates

You can also use the templates as flakes for starting new projects:

nix flake init --template github:nmasur/dotfiles#poetry