2 Oct 2025 |
accelbread | you could also maybe add a flakelightModule that adds a stagingSystem option or smth | 15:06:24 |
accelbread | 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 |
accelbread | In reply to @niclas:overby.me Did you come to a conclusion for this? havnt had a chance yet | 15:28:30 |
Niclas Overby Ⓝ | Ideally I would use lib, but how can you access nixpkgs from lib? | 17:19:17 |
Niclas Overby Ⓝ | * Ideally I would use nix/lib.nix , but how can you access nixpkgs? | 17:20:33 |
Niclas Overby Ⓝ | * Ideally I would use nix/lib.nix , but how can you access pkgs ? | 17:21:47 |
accelbread | Some folk put per-system things in lib like lib.x86_64-linux.mkShell . You can do that in flakelight either with nix/lib.nix :
{ genSystems, ... }: ({
# regular lib stuff
} // genSystems (pkgs: {
# per-system lib stuff
}))
| 17:44:31 |
accelbread | * Some folk put per-system things in lib like lib.x86_64-linux.mkShell . You can do that in flakelight either with nix/lib.nix :
{ genSystems, ... }: ({
# regular lib stuff
} // genSystems (pkgs: {
# per-system lib stuff
}))
| 17:44:38 |
accelbread | * Some folk put per-system things in lib like lib.x86_64-linux.mkShell. You can do that in flakelight with nix/lib.nix:
{ genSystems, ... }: ({
# regular lib stuff
} // genSystems (pkgs: {
# per-system lib stuff
}))
| 17:55:31 |
accelbread | * Some folk put per-system things in lib like lib.x86_64-linux.mkShell. You can do that in flakelight with nix/lib.nix:
{ genSystems, ... }: ({
# regular lib stuff
} // genSystems (pkgs: {
# per-system lib stuff
}))
| 17:56:10 |
3 Oct 2025 |
Niclas Overby Ⓝ | Is it possible to disable the nixDir feature? Or more fine-grained, disable autoloading of specific outputs in nixDir ? | 08:50:02 |
accelbread | yeah, can set it to a non-existing dir iirc. I could add a null option | 16:01:53 |
accelbread | fine-grained, no | 16:02:15 |
4 Oct 2025 |
Niclas Overby Ⓝ | That would be awesome! :) | 11:25:04 |
7 Oct 2025 |
accelbread | nixDir can now be set to null: https://github.com/nix-community/flakelight/commit/eda172d7ead89292cb7f9e136a482e97e00873a4 | 06:27:30 |
8 Oct 2025 |
Niclas Overby Ⓝ | Is there a reason, that the ./. argument is separate from the following attributeset?
Why this:
outputs = inputs:
inputs.flakelight ./. {
inherit inputs;
And not this:
outputs = inputs:
inputs.flakelight {
inherit inputs;
src = ./.;
| 11:40:24 |
Niclas Overby Ⓝ | Some another questions :)
Other than populating the src attribute and detecting the nixDir directory, is ./. used for anything else?
Could it potentially be made optional?
| 11:42:45 |
Niclas Overby Ⓝ | * Is there a reason, that the ./. argument is separate from the following attributeset?
Why this:
outputs = inputs:
inputs.flakelight ./. {
inherit inputs;
And not this:
outputs = inputs:
inputs.flakelight {
inherit inputs;
src = ./.;
I guess the first is a little shorter, but are there any other reason?
| 11:43:46 |
accelbread | Redacted or Malformed Event | 15:19:14 |
accelbread | I had attempted that syntax initially but it led to a bunch of infinite recursions | 15:23:32 |
accelbread | also I couldn't make the flake root a default value of src | 15:24:22 |
accelbread | its used for src , nixDir , default package description pulled from flake description, loading default inputs fron your flake.lock, preparing the file tree for flake checks, the formatting check, enabling editorconfig support | 15:31:40 |
| zxfsee joined the room. | 22:31:33 |
9 Oct 2025 |
Niclas Overby Ⓝ | If it is possible, would you change how lib is exposed? | 09:01:30 |
Niclas Overby Ⓝ | Yeah, it only seems to work with nixDir and flakelight.editorconfig disabled:
{
inputs = flakelight.url = "github:accelbread/flakelight";
outputs =
inputs@{
flakelight,
self,
...
}:
flakelight self {
inherit inputs;
nixDir = null;
flakelight.editorconfig = false;
packages.hello = pkgs: pkgs.hello;
};
}
| 11:36:07 |
Niclas Overby Ⓝ | * Yeah, it only seems to work with nixDir and flakelight.editorconfig disabled:
{
inputs.flakelight.url = "github:accelbread/flakelight";
outputs =
inputs@{
flakelight,
self,
...
}:
flakelight self {
inherit inputs;
nixDir = null;
flakelight.editorconfig = false;
packages.hello = pkgs: pkgs.hello;
};
}
| 12:21:26 |
10 Oct 2025 |
accelbread | yea, too easy to make self depend on itself if you use its path | 04:09:47 |
13 Oct 2025 |
accelbread | yeah I don't think applying modifications to lib makes sense. If enabled, then the value of lib would be different when resolving imports vs config | 03:17:22 |
accelbread | I think it'd be confusing to have lib be different values during different parts of evaluation | 03:17:56 |
Niclas Overby Ⓝ | Fair, but it would be nice if Flakelight has a opinionated way to add helper functions, that will be made available everywhere like with packages.
It does not have to be by modifying lib, but I'm not sure what the alternative could be.
| 09:25:49 |