!yUrHuDcxUngfTlDbiy:matrix.org

flakelight

38 Members
https://github.com/nix-community/flakelight12 Servers

Load older messages


SenderMessageTime
25 Sep 2025
@niclas:overby.meNiclas Overby Ⓝ *

The idea is to have something that is easy to read for non-Nix native developers.

Compare this:

nixDirAliases = {
  nixosModules = [ "nixos/modules/*" ]
};

To this:

nixDirAliases = {
  nixosModules = lib.pipe ./nixos/modules [ builtins.readDir lib.attrNames (map (d: "nixos/modules/${d}"))] 
};

For how easy it is to read for someone, who has never programmed a ml-like language.

13:19:31
29 Sep 2025
@niclas:overby.meNiclas Overby ⓃRedacted or Malformed Event13:05:08
@niclas:overby.meNiclas Overby ⓃRedacted or Malformed Event13:05:11
@niclas:overby.meNiclas Overby Ⓝ *

Is withOverlays not applied in nixosConfigurations?

I have added the function lib.noverby.add to withOverlay, but the function cannot be accessed?

nixosConfigurations/gravitas.nix:

13:05:47
@niclas:overby.meNiclas Overby Ⓝ *

Is withOverlays not applied in nixosConfigurations?

I have added the function lib.noverby.add to withOverlay, but the function cannot be accessed?

devices/gravitas.nix: (nixosConfigrations has an alias to devices)

13:06:28
@niclas:overby.meNiclas Overby ⓃRedacted or Malformed Event13:06:53
@niclas:overby.meNiclas Overby ⓃRedacted or Malformed Event13:08:33
@niclas:overby.meNiclas Overby Ⓝ * I can access lib.noverby.add in nixosModules 13:08:41
@niclas:overby.meNiclas Overby Ⓝ

Is it possible to add functions to ModuleArgs.lib?

I need it to create helper functions for setting up nixosConfigrations.
It seems like it cannot be added using withOverlays, is there another approach?

13:39:48
@accelbread:matrix.orgaccelbreadthat lib is nixpkgs' so needs withOverlays15:33:48
@accelbread:matrix.orgaccelbreadyou could add a new moduleArg for your helpers15:34:33
@accelbread:matrix.orgaccelbread flakelight puts its helpers in the flakelight module arg and adds it to lib with withOverlays 15:35:43
@niclas:overby.meNiclas Overby ⓃIt does not seem to work:15:43:14
@niclas:overby.meNiclas Overby Ⓝimage.png
Download image.png
15:43:15
@niclas:overby.meNiclas Overby Ⓝimage.png
Download image.png
15:43:32
@niclas:overby.meNiclas Overby Ⓝ

withOverlays/lib.nix

# Overlay Flake lib as lib.noverby
(final: prev: {lib = prev.lib.extend (_: _: {noverby = prev.outputs.lib;});})
15:44:40
@niclas:overby.meNiclas Overby Ⓝ *

withOverlays/lib.nix

# Overlay Flake lib as lib.noverby
(final: prev: {lib = prev.lib.extend (_: _: {noverby = prev.outputs.lib;});})
15:44:46
@niclas:overby.meNiclas Overby Ⓝ

It does work, if I try to access it in pkgs:

{
  pkgs,
  ...
}: {
  # Nix
  nix = {
    settings = {
      max-jobs = pkgs.lib.noverby.add 2 2;
15:48:59
@niclas:overby.meNiclas Overby Ⓝ *

It does work, if I try to access it in pkgs: (That is only possible in a nixosModule)

{
  pkgs,
  ...
}: {
  # Nix
  nix = {
    settings = {
      max-jobs = pkgs.lib.noverby.add 2 2;
15:51:50
@niclas:overby.meNiclas Overby Ⓝ *

It does work, if I try to access it in pkgs: (That is possible in a nixosModule, and not in nixosConfigurations)

{
  pkgs,
  ...
}: {
  # Nix
  nix = {
    settings = {
      max-jobs = pkgs.lib.noverby.add 2 2;
15:52:12
@niclas:overby.meNiclas Overby Ⓝ Other than this toy example, the thing I'm trying to do is to add helper functions like mkBaseSystem, mkTestSystem, 'mkCalibSystem', that can be used to generate nixosConfigrations. 15:57:16
@niclas:overby.meNiclas Overby Ⓝ * Other than this toy example, the thing I'm trying to do is to add helper functions like mkBaseSystem, mkTestSystem, mkCalibSystem, that can be used to generate nixosConfigrations. 15:57:30
@accelbread:matrix.orgaccelbreadright, the overlays applies for lib in pkgs; the one for module args is set by the module system. not sure if tge module system allows modifying it16:08:13
@accelbread:matrix.orgaccelbread but _module.args.noverby would allow you to get { noverby, ... } from modules 16:09:49
@accelbread:matrix.orgaccelbreadill check if itd be possible to modify the module lib (though might be an infinite recursion thing)16:10:36
@accelbread:matrix.orgaccelbread especially since lib is specialArgs not args 16:11:09
@accelbread:matrix.orgaccelbread ah right, i'd been using self.lib in the past iirc 16:12:35
@niclas:overby.meNiclas Overby Ⓝ * Other than this toy example, the thing I'm trying to do is to add helper functions like mkBaseSystem, mkTestSystem, mkCalibSystem, that can be used to generate nixosConfigurations. 16:28:31
30 Sep 2025
@niclas:overby.meNiclas Overby Ⓝ How does that work? 05:30:35
@accelbread:matrix.orgaccelbread you can set a flakes lib output, and then access it though inputs.self 05:35:43

Show newer messages


Back to Room ListRoom Version: 10