dark-firepit host dotfiles, based on Nix Flakes. Shared across a couple of other hosts.
Go to file
Jill ce57ed6732 isso: fix; now it works :) 2023-02-01 02:41:42 +01:00
config fix gitea deprecation warnings 2023-01-19 00:25:07 +01:00
hosts isso: fix; now it works :) 2023-02-01 02:41:42 +01:00
lib refactor authorizedKeys 2022-10-18 19:54:57 +02:00
modules isso: fix; now it works :) 2023-02-01 02:41:42 +01:00
overlays Added nwggrid 2022-01-13 16:13:25 +00:00
packages ghost: init 2023-02-01 02:14:27 +01:00
.editorconfig .editorconfig 2023-01-19 01:38:10 +01:00
.gitignore partially update flake 2023-01-19 00:21:18 +01:00
LICENSE Initial commit 2022-01-11 16:42:20 +00:00
README.md comprehensive readme! 2023-01-19 02:31:46 +01:00
default.nix some refactoring 2022-09-05 18:27:22 +02:00
flake.lock update flake 2023-01-22 08:32:51 +01:00
flake.nix fix vscode server stuff 2023-01-19 15:17:35 +01:00
shell.nix Dotfiles 2022-01-11 17:44:40 +00:00

README.md

Frosted Flakes

Nix Flake dotfiles shared across a few hosts. Most development here will go into the dark-firepit host, however.

Development

Commands here will use dark-firepit-based paths and names as an example

  • To build the system (doesn't apply changes):
    nixos-rebuild build --upgrade --impure --flake /etc/dotfiles#dark-firepit
    
  • To build & switch to a new system (applies changes):
    doas nixos-rebuild switch --impure --upgrade --flake /etc/dotfiles#dark-firepit
    

dark-firepit

Things here mostly only apply to the dark-firepit host.

Adding modules

Generally when adding modules (even those pulled from nixpkgs) you'd want to:

  1. Create a new module under modules/services/; gitea.nix and nitter.nix are pretty okay examples of what to do
  2. git add . or else Nix will act clueless about everything you've just done
  3. Set it to enabled, set port, domain, etc. in hosts/.../default.nix or wherever else is more appropriate
  • For webapps, follow what's done in hosts/dark-firepit/webapps/default.nix; if you're doing something bigger, it may be worth abstracting into a seperate file
  1. Rebuild/switch to the new system (as described above)

yugoslavia-best.nix

God fucking help us lmao

You're on your own if you try to edit this file. Please be ready to yell at Jill the moment you open it and to continue doing that for the entire time it is open

Editing code

For now, you can simply edit /etc/dotfiles; in the future it's planned to give every user their own seperate repository sandbox before pulling the changes into the main config at /etc/dotfiles.

This can be done directly on the server (as long as you have the dotfiles group) through your favorite modal editor (micro, nvim, hx, nano, ...) or at https://dev-firepit.oat.zone/ (authorization and further details are pinned in the Discord).

If you encounter permission funnies, don't hesitate to doas your way into chmoddding/chowning files as necessary; directories should be 775 and files should be 664, however we've yet to figure out how to consistently enforce this across the directory.

Be sure to commit regularly to prevent tons of densely packed undocumented commits building up after noone bothers to commit anything.