My NixOS configs(backup)
Find a file
2022-01-29 13:36:51 -05:00
hosts feat(hosts): Add laptop config(zaphod) 2022-01-29 13:14:13 -05:00
lib init 2022-01-28 09:25:01 -05:00
modules init 2022-01-28 09:25:01 -05:00
overlays feat(overlays): Remove haskell pkgs and direnv override 2022-01-29 13:17:23 -05:00
pkgs init 2022-01-28 09:25:01 -05:00
profiles feat(core): Remove some misc unneeded stuff 2022-01-29 13:18:03 -05:00
secrets init 2022-01-28 09:25:01 -05:00
shell init 2022-01-28 09:25:01 -05:00
ssh feat(ssh): Add public keys 2022-01-29 13:18:12 -05:00
users feat(profiles): Add fish profile 2022-01-29 13:36:51 -05:00
.editorconfig init 2022-01-28 09:25:01 -05:00
.envrc init 2022-01-28 09:25:01 -05:00
.gitignore init 2022-01-28 09:25:01 -05:00
default.nix feat(default): Don't build for arm or 32-bit 2022-01-29 13:26:19 -05:00
flake.lock chore: Update flake.lock 2022-01-29 13:19:15 -05:00
flake.nix feat(profiles): Add home profile 2022-01-29 13:25:46 -05:00
README.md replace readme 2022-01-28 09:25:41 -05:00
shell.nix init 2022-01-28 09:25:01 -05:00

Mr Hedgehog's Nix Config

Welcome to my ~

This is a nix config, created with the literate programming technique. It uses the md-tangle tool and all the files in this directory to achive that.

The main goal of literate programming is to make it so documentation never seperates from code. That's why I am doing my config like this.

Another reason to do this is because of the strangeness of the nix configuration language that I use.

All this is to say that I believe that literate programming is amazing, and that everyone should use it, as it emphasizes good documentation.

Directory Structure

When I refer to a .nix file, You will find it under the same filename, but with a .md extension instead. So home.nix refers to the home.md file, which is then tangled into the home.nix file. I include the generated nix files in this repository only for the purpose of bootstrapping my config, and not as a single source of truth.

Many other files are also tangled, like my non-nix configs.

/
|
|- cachix
|   |- This is my folder for importing nix binary caches
|   |- It includes a default.nix so that I can import it, and 1 file per cache.
|
|- config
|   |- Contains all of my non-nix config files
|   |- As well as any nix config files that are too long to include in home.nix
|
|- hosts
|   |- Per-machine configuration
|   |- zaphod.nix
|   |   |- My laptop's configuration
|
|- nix
|   |- Just some general nix configuration
|   |- nix.conf
|   |   |- Nix's config file.
|
|- pkgs
|   |- Custom packages that get imported into the nixpkgs tree at runtime.
|
|- users
|   |- Per-user config.
|   |- mrhedgehog.nix
|   |   |- My personal config
|   |- root.nix
|   |   |- Root user configuration

Useful Resources I've found

The Unofficial NixOS Wiki

https://nixos.wiki

Probably one of the most helpful sites around, as it contains a wealth of information on many things nix-related, as well as info on the ecosystem itself.