Go to file
2024-04-13 09:09:54 -04:00
.github/workflows add cleanup step for dns record after tf destroy 2024-03-30 19:47:43 +00:00
apps fixes for onboarding aarch64-darwin 2024-01-24 21:52:33 -05:00
colorscheme add readme for each directory 2023-08-06 08:01:21 -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 apply new nix fmt specification 2024-04-13 09:03:44 -04:00
misc introduce arrow host and deployment 2024-03-24 13:16:20 -04:00
modules no reason to have 122 in firewall 2024-04-13 09:01:56 -04:00
overlays apply new nix fmt specification 2024-04-13 09:03:44 -04:00
private fixes to cloudflare dyndns and ssh 2024-03-24 15:04:40 -04:00
templates apply new nix fmt specification 2024-04-13 09:03:44 -04:00
windows use shift+enter for completion in terminal 2022-10-31 20:47:33 -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 temp: replace bpc-uploads with my own version 2024-04-13 09:02:41 -04:00
flake.nix temp: replace bpc-uploads with my own version 2024-04-13 09:02:41 -04:00
LICENSE add MIT license 2022-07-27 19:03:31 -04:00
README.md replace white background diagram with transparent 2024-04-13 09:09:54 -04: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