dark-firepit host dotfiles, based on Nix Flakes. Shared across a couple of other hosts.
Go to file
Jill 5a8966ee20 chore: weekly??? flake update 2023-09-23 12:07:03 +02:00
config forgejo switch part 2 2023-03-20 19:56:58 +01:00
hosts dendrite stuff 2023-09-23 12:02:09 +02:00
lib refactor authorizedKeys 2022-10-18 19:54:57 +02:00
modules dendrite stuff 2023-09-23 12:02:09 +02:00
overlays mess with nitter (and fail) 2023-06-08 20:13:08 +02:00
packages swap jmusicbot to gmusicbot 2023-06-22 11:15:08 +02: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 update readme 2023-05-18 06:13:53 +02:00
default.nix some refactoring 2022-09-05 18:27:22 +02:00
flake.lock chore: weekly??? flake update 2023-09-23 12:07:03 +02:00
flake.nix fix nodejs-16_x deprecation error; disable code-server (dev.dark-firepit.cloud); reorganize vscode-server 2023-06-08 20:47:25 +02:00
shell.nix Dotfiles 2022-01-11 17:44:40 +00:00


Frosted Flakes

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


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

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


Things here mostly only apply to the lucent-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/lucent-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)


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.