flakelight | 38 Members | |
| https://github.com/nix-community/flakelight | 12 Servers | 
| Sender | Message | Time | 
|---|---|---|
| 30 Sep 2025 | ||
| though if you have a lot of flakes, it probably better to have a shared flake dep that exports a lib for everything else to use | 05:36:40 | |
 If you put lib functions into nix/lib, then I guess you cannot currently access module args?  | 08:11:27 | |
 * If you put lib functions as standalone nix files into nix/lib, then I guess you cannot currently access module args?  | 08:12:17 | |
| E.g | 08:14:31 | |
Download image.png  | 08:14:32 | |
 You can only access module args, if you create a nix/lib.nix instead?  | 08:21:26 | |
 * So you can only access module args, if you create a nix/lib.nix instead?  | 11:26:10 | |
 yeah, youd need nix/lib.nix or nix/lib/default.nix  | 16:13:02 | |
| lib is an attrset of anything at all so cant add optional args to anything but the root attrset | 16:14:40 | |
| 2 Oct 2025 | ||
| Did you come to a conclusion for this? | 09:28:05 | |
|   Ended up using this, but it would be nice if there was a clean way to extend lib in module args: 
  | 09:43:12 | |
|   Where are you supposed to add helper functions similar to  
I cannot put it under  
  | 10:03:53 | |
|  *  Where are you supposed to add helper functions similar to  
I cannot put it under  
  | 10:04:10 | |
|  *  Where are you supposed to add helper functions similar to  
I cannot put it under  
  | 10:06:13 | |
|  *  Where are you supposed to add helper functions similar to  
I cannot put it under  
  | 10:06:45 | |
| ah, the correct places would either be lib, legacyPackages, or an overlay | 14:53:12 | |
 id normally set <namespace>.mkShell in an overlay output and add that to withOverlays  | 14:54:21 | |
| legacyPackages doesn't verify strucure, just that it has the pkgset type that stuff expects | 14:55:33 | |
| https://github.com/aws-greengrass/aws-greengrass-sdk-lite/blob/44ea7a1f38ce5eab05558cadbe701e3f0c314216/flake.nix#L219 | 14:56:37 | |
| here is a legacyPackages example | 14:56:55 | |
 the pkgs type is any set with _type = "pkgs"  | 14:57:30 | |
| not sure why nixpkgs does it that way but im using nixpkg's definition | 14:58:10 | |
 flakelight sets its lib functions in the flakelight module arg so reachable from that and inherits that in a flakelight attr in overlay. both locations means { flakelight, ... }: flakelight.importDir works for stuff taking module args or for stuff taking pkgs  | 15:02:44 | |
 you could also maybe add a flakelightModule that adds a stagingSystem option or smth  | 15:06:24 | |
|  https://github.com/accelbread/flakelight-elisp/blob/master/flakelight-elisp.nix here flakelight-elisp adds a config option for defining elisp packages  | 15:08:08 | |
  In reply to @niclas:overby.mehavnt had a chance yet  | 15:28:30 | |
| Ideally I would use lib, but how can you access nixpkgs from lib? | 17:19:17 | |
 * Ideally I would use nix/lib.nix, but how can you access nixpkgs?  | 17:20:33 | |
 * Ideally I would use nix/lib.nix, but how can you access pkgs?  | 17:21:47 | |
|   Some folk put per-system things in lib like  
  | 17:44:31 | |