!wfudwzqQUiJYJnqfSY:nixos.org

NixOS Module System

141 Members
27 Servers

Load older messages


SenderMessageTime
24 Nov 2025
@roberthensing:matrix.orgRobert Hensing (roberth) They were combined into a single change to maximize the utility of having a v2 16:48:05
@roberthensing:matrix.orgRobert Hensing (roberth)oh that...16:48:28
@hsjobeki:matrix.orghsjobekiThough i am not sure what the benefit of merging without checking is. Checks are usually shallow and shouldnt change the lazyness. If the value is not of the expected type, merging it would also fail 16:50:33
@roberthensing:matrix.orgRobert Hensing (roberth)If you want merging without checking, you can still construct a type that achieves that16:51:02
@roberthensing:matrix.orgRobert Hensing (roberth) But yeah, generally the check is simple because otherwise you're inducing unnecessary strictness, as in non-laziness 16:51:36
@roberthensing:matrix.orgRobert Hensing (roberth)=> infinite recursions16:51:54
@hsjobeki:matrix.orghsjobekiDo you suspect a breaking change in lazyness between just merge and checkAndMerge ?16:54:48
@hsjobeki:matrix.orghsjobekiWe dont have any reports, or at least i didnt get pinged in any issues regarding that. 16:55:47
@n4ch723hr3r:nope.chatn4ch723hr3rdo i have to use systemd.tmpfiles?16:56:55
@mattsturg:matrix.orgMatt Sturgeon
In reply to @n4ch723hr3r:nope.chat
do i have to use systemd.tmpfiles?
This room is for discussing the module system itself, not NixOS and its options. You want https://matrix.to/#/!6oudZq5zJjAyrxL2uY:0upti.me
17:16:25
@vivekanandan_ks:matrix.orgvivekanandan_ks Hi All,
What do u all think about the flake-parts?
Is that somehow making the current modules system better?
Or it helps the current modules to be easy?
17:59:32
@mattsturg:matrix.orgMatt Sturgeon

Flake-parts uses the module system to construct flake outputs. Just like how NixOS uses the module system to construct an OS, or Home Manager uses the module system to construct a user's profile.

I'm not sure what you're asking about how it interacts with "current" modules, or what you mean by "current" 🙂

18:20:35
@n4ch723hr3r:nope.chatn4ch723hr3ri think hes asking for an opinion about flake.parts18:43:44
26 Nov 2025
@hsjobeki:matrix.orghsjobeki I'd say i don't have a general opinion.
If you develop a third party nix library that other people depend on every input that you have adds to their dependencies as well.
That is how flake dependencies behave. And everyone needs to pin nixpkgs-lib of flake-parts otherwise you get their version, which is an extra 50MB download.
Other than that if you are using it for your own project that doesn't have dependents it is in my opinion a good UX, which lets you leverage the module system to decompose the components of your flake.
16:33:29
@roberthensing:matrix.orgRobert Hensing (roberth) it now uses a small lib-only flake fwiw, but the override still makes sense to have 16:39:27
8 Feb 2024
@aciceri:nixos.devzrsk joined the room.10:38:02
15 Feb 2024
@a-kenji:matrix.orga-kenji joined the room.19:15:14
16 Feb 2024
@qyriad:matrix.orgQyriad joined the room.14:56:15
@mr-qubo:matrix.orgmr-qubo joined the room.14:59:24
@mr-qubo:matrix.orgmr-qubo

I recently stumbled upon similar issue when working on home-manager. https://discourse.nixos.org/t/is-it-possible-to-define-systemd-services-in-a-submodule/39538/5

The idea is that enabling https://nix-community.github.io/home-manager/options.xhtml#opt-programs.bash.enableCompletion should set environment.pathsToLink = [ "/share/bash-completion" ];.

I think that module system is missing an option to pass config options recursively up to all ancestors.

15:06:01
@mr-qubo:matrix.orgmr-qubo My idea is that nixos config could have a property extraNixosChildConfig and in home-manager bash module I could set _recurseAncestors = { extraNixosChildConfig = { environment.pathsToLink = [ ... ]; }; }. 15:07:22
@mr-qubo:matrix.orgmr-qubowdyt?15:07:26
@mr-qubo:matrix.orgmr-qubo * My idea is that nixos config could have a property extraNixosChildConfig that gets merged with the rest of the config and in home-manager bash module I could set _recurseAncestors = { extraNixosChildConfig = { environment.pathsToLink = [ ... ]; }; }. 15:07:44
@mr-qubo:matrix.orgmr-qubo * My idea is that nixos config could pick up extraNixosChildConfig from childs and merge it with the rest of the config and in home-manager bash module I could set _recurseAncestors = { extraNixosChildConfig = { environment.pathsToLink = [ ... ]; }; }. 15:08:21
@infinisil:matrix.orginfinisilNot sure about that recursive thing, that doesn't seem necessary, but yeah if there's something missing in the NixOS module for home-manager, that could be added15:34:09
@infinisil:matrix.orginfinisilSounds like an issue for the home-manager repo15:34:16
@mr-qubo:matrix.orgmr-quboYeah, we could add it just for home-manager. But is seems like the issue is quite generic. See also https://github.com/NixOS/nixpkgs/pull/152785.15:51:50
@infinisil:matrix.orginfinisilHmm yeah fair. I don't have the capacity to think a lot about this right now, it's a very intricate topic to wrap ones head around15:56:55
@mr-qubo:matrix.orgmr-quboYeah, I just wanted to bring the topic, maybe someone has some interesting thoughts.16:05:23
@philiptaron:matrix.orgPhilip Taron (UTC-8) joined the room.17:49:31

Show newer messages


Back to Room ListRoom Version: 10