My public NixOS configuration
Find a file
Jalil David Salamé Messina 4b14805108
Some checks failed
/ check (push) Failing after 24s
/ build (audiomenu) (push) Successful in 1s
/ build (docs) (push) Successful in 2s
/ build (jpassmenu) (push) Successful in 2s
/ build (nixosConfigurations.vm.config.system.build.toplevel) (push) Successful in 24s
/ build (nvim) (push) Successful in 13s
[chore] flake.lock: update inputs
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/1bbc1a5a1f4de7401c92db85b2119ed21bb4139d' (2024-09-20)
  → 'github:nix-community/home-manager/2f23fa308a7c067e52dfcc30a0758f47043ec176' (2024-09-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/944b2aea7f0a2d7c79f72468106bc5510cbf5101' (2024-09-20)
  → 'github:NixOS/nixpkgs/fbca5e745367ae7632731639de5c21f29c8744ed' (2024-09-28)
• Updated input 'nixvim':
    'github:nix-community/nixvim/2bc6a949924319f61619d32695115a61394741f8' (2024-09-21)
  → 'github:nix-community/nixvim/5f4a4b47597d3b9ac26c41ff4e8da28fa662f200' (2024-09-29)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/4e743a6920eab45e8ba0fbe49dc459f1423a4b74' (2024-09-19)
  → 'github:cachix/git-hooks.nix/85f7a7177c678de68224af3402ab8ee1bcee25c8' (2024-09-28)
• Updated input 'nixvim/nuschtosSearch':
    'github:NuschtOS/search/7733a39a1321057172d87e6251ded7cdeb67171e' (2024-09-20)
  → 'github:NuschtOS/search/c3c3928b8de7d300c34e9d90fdc19febd1a32062' (2024-09-29)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/ee41a466c2255a3abe6bc50fc6be927cdee57a9f' (2024-09-19)
  → 'github:numtide/treefmt-nix/879b29ae9a0378904fbbefe0dadaed43c8905754' (2024-09-27)
• Updated input 'unstable':
    'github:NixOS/nixpkgs/c04d5652cfa9742b1d519688f65d1bbccea9eb7e' (2024-09-19)
  → 'github:NixOS/nixpkgs/1925c603f17fc89f4c8f6bf6f631a802ad85d784' (2024-09-26)
2024-09-30 09:11:06 +02:00
.forgejo/workflows [fix] ci: remove scheduled workflow 2024-08-09 22:59:23 +02:00
.github/workflows [fix] ci: remove diagnostic endpoint 2024-08-24 23:44:47 +02:00
docs [fix] fmt: change formatter to nixfmt-rfc-style 2024-07-04 22:33:55 +02:00
home feat: enable use-xdg-base-directories for nix 2024-09-20 09:44:27 +02:00
machines/vm [fix] machines: remove all configurations 2024-07-20 18:36:08 +02:00
nvim [chore] flake.lock: update inputs 2024-09-11 08:10:25 +02:00
scripts chore(scripts): update Cargo.lock 2024-09-20 09:48:04 +02:00
system feat: enable use-xdg-base-directories for nix 2024-09-20 09:44:27 +02:00
.editorconfig feat: Add editorconfig file 2024-01-21 20:56:10 +01:00
.envrc feat: Add a bunch of precommit hooks 2024-01-15 23:59:15 +01:00
.gitignore [feature] nix: switch to lix 2024-05-10 23:21:25 +02:00
.typos.toml feat(nvim): Add noice plugin (very nice) 2024-03-04 22:20:15 +01:00
flake.lock [chore] flake.lock: update inputs 2024-09-30 09:11:06 +02:00
flake.nix fix(ruff): use unstable lsp instead 2024-09-30 09:06:07 +02:00
justfile [feat] nvim: add custom vim plugin management 2024-08-10 14:51:09 +02:00
LICENSE feat: Add license 2024-01-14 18:04:01 +01:00
README.md [feature] justfile: add build-vm and run-vm commands 2024-05-05 14:35:52 +02:00

My NixOS Configuration as a NixOS module

This is only intended for my use, but you can see how I overengineer stuff by looking at it :p (maybe you can also learn some stuff on the way).

Note

This README only has a small amount of information, if you want to see the full documentation then go to https://jalil-salame.github.io/configuration.nix. I also overenginerd this c: (if you want to copy the docs for your own project, then take a look at the docs folder and the workflow(build-documentation and deploy)).

Try out in a VM

If you already have nix you can run the following command to try this configuration in a vm:

$ just run-vm

The default user is jdoe and the default password is example.

Note

$QEMU_OPTS_WL is a set of options that will enable Wayland passthrough (and GPU acceleration) and give the VM 2vCPU cores and 2GiB of RAM. This will significantly improve your experience when running the VM so it is recommended, but if Wayland is not available or you don't have enough memory/CPU cores, then you can use -virtio vga and/or reduce the allocated resources.