refactor(modules/nixos): move stuff around #367

Merged
jalil merged 1 commit from push-vzoqzxmtznrk into main 2025-03-21 19:06:16 +01:00
Owner

This makes it a bit clearer and easier to extend.

This makes it a bit clearer and easier to extend.
jalil self-assigned this 2025-03-21 18:45:03 +01:00
jalil added 1 commit 2025-03-21 18:45:03 +01:00
refactor(modules/nixos): inline options
Some checks failed
/ check (push) Successful in 9s
/ check-renovaterc (push) Successful in 2s
/ build-packages (push) Successful in 13s
/ build-vm (push) Successful in 16s
/ report-size (push) Has been cancelled
afb30626ed
This makes the options a bit clearer and easier to extend.
jalil changed title from refactor(modules/nixos): inline options to refactor(modules/nixos): move stuff around 2025-03-21 18:45:19 +01:00
jalil force-pushed push-vzoqzxmtznrk from afb30626ed to 917d131cde 2025-03-21 18:45:53 +01:00 Compare
First-time contributor

Flake output sizes

Definitions
  • Name: the name of the package/configuration.
  • Size: the closure size (size on disk/NAR size + all transitive dependencies).
  • NAR Size: the size of the build output (package without the dependencies).
  • [NAR] Size Change: the amount changed compared to the main branch.
Tips on reading this data
  • For NixOS configurations you generally care only about the Size (closure size/size on disk).
    • Reduce the Size by disabling unneeded services/default packages.
  • For Packages you care about both the Size and the NAR Size.
    • Reduce the NAR Size by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc.
    • Reduce the Size by reducing the dependencies (e.g. buildInputs).
    • Don't worry too much about size, some dependencies are deduplicated, e.g. glibc adds ~40MiB to the Size, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. musl is not gonna improve things.

NixOS Configurations

Name Size Size Change NAR Size NAR Size Change
vm 9.0GiB 0B 19KiB 0B

Packages

Name Size Size Change NAR Size NAR Size Change
audiomenu 42MiB 0B 1.4MiB 0B
docs 2.4MiB 16KiB 2.4MiB 16KiB
docs-home-markdown 11KiB -464B 11KiB -464B
docs-nixos-markdown 6.3KiB -248B 6.3KiB -248B
docs-nvim-markdown 2.3KiB -88B 2.3KiB -88B
jpassmenu 43MiB 0B 2.3MiB 0B
nvim 1.4GiB 0B 578KiB 0B
nvim-headless 392MiB 0B 578KiB 0B
nvim-no-lsps 1.2GiB 0B 578KiB 0B
nvim-no-ts 1.5GiB 0B 578KiB 0B
nvim-small 947MiB 0B 578KiB 0B
<!-- AUTOGENERATED by nix-flake-outputs-size action --> ## Flake output sizes <details><summary><b>Definitions</b></summary> - `Name`: the name of the package/configuration. - `Size`: the closure size (size on disk/NAR size + all transitive dependencies). - `NAR Size`: the size of the build output (package without the dependencies). - `[NAR] Size Change`: the amount changed compared to the main branch. </details> <details><summary><b>Tips on reading this data</b></summary> - For NixOS configurations you generally care only about the `Size` (closure size/size on disk). - Reduce the `Size` by disabling unneeded services/default packages. - For Packages you care about both the `Size` and the `NAR Size`. - Reduce the `NAR Size` by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc. - Reduce the `Size` by reducing the dependencies (e.g. `buildInputs`). - Don't worry too much about size, some dependencies are deduplicated, e.g. `glibc` adds ~40MiB to the `Size`, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. `musl` is not gonna improve things. </details> ## NixOS Configurations | Name | Size | Size Change | NAR Size | NAR Size Change | |------|-----:|------------:|---------:|----------------:| | `vm` | 9.0GiB | 0B | 19KiB | 0B | ## Packages | Name | Size | Size Change | NAR Size | NAR Size Change | |------|-----:|------------:|---------:|----------------:| | `audiomenu` | 42MiB | 0B | 1.4MiB | 0B | | `docs` | 2.4MiB | 16KiB | 2.4MiB | 16KiB | | `docs-home-markdown` | 11KiB | -464B | 11KiB | -464B | | `docs-nixos-markdown` | 6.3KiB | -248B | 6.3KiB | -248B | | `docs-nvim-markdown` | 2.3KiB | -88B | 2.3KiB | -88B | | `jpassmenu` | 43MiB | 0B | 2.3MiB | 0B | | `nvim` | 1.4GiB | 0B | 578KiB | 0B | | `nvim-headless` | 392MiB | 0B | 578KiB | 0B | | `nvim-no-lsps` | 1.2GiB | 0B | 578KiB | 0B | | `nvim-no-ts` | 1.5GiB | 0B | 578KiB | 0B | | `nvim-small` | 947MiB | 0B | 578KiB | 0B |
jalil merged commit 917d131cde into main 2025-03-21 19:06:16 +01:00
jalil deleted branch push-vzoqzxmtznrk 2025-03-21 19:06:16 +01:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: jalil/configuration.nix#367
No description provided.