27 Sep 2021 |
Pacman99 | In reply to @blaggacao:matrix.org That's not necessary, the submodule just checks out the respective commit. If that commit is already on GitHub's server then that's all it takes. Got it, just switched to the branch on devos in the submodule and ran bors try. It so far seems to be working now. | 22:25:54 |
Pacman99 | In reply to @timdeh:matrix.org oh wow it is because of follows somehow, even using latest unstable nix. If I just comment out all my follows then it doesn't happen 🤯 Out of curiosity, how did you manage to get digga to follow itself? | 22:26:33 |
Pacman99 | That does seem like something nix should detect and report the recursion. | 22:27:46 |
@timdeh:matrix.org | yeah it'd be better than just having a generic stack overflow and having to discover it yourself | 22:28:07 |
@timdeh:matrix.org | so most of the flake-utils were following digga's flake-utils-plus/flake-utils input, so I was just carelessly copy pasting `*.follows = "digga/flake-utils-plus/flake-utils" and I happened to paste that on digga's flake-utils input itself 😅 | 22:28:55 |
@timdeh:matrix.org | * so most of the flake-utils were following digga's flake-utils-plus/flake-utils input, so I was just carelessly copy pasting *.follows = "digga/flake-utils-plus/flake-utils" and I happened to paste that on digga's flake-utils input itself 😅 | 22:29:06 |
Pacman99 | Ohh interesting yeah that makes sense | 22:35:12 |
Pacman99 | Good to know for the future | 22:35:19 |
@timdeh:matrix.org | something like this may help as well. In general, I'm wondering if we really even need to specify inputs explicitly at all or if the cli should just handle this for us, and return information about inputs when desired. We'd still be able to search inputs from a repl anyway. | 22:44:11 |
@timdeh:matrix.org | * something like this may help as well. In general, I'm beginning to wonder if we really even need to specify inputs explicitly at all or if the cli should just handle this for us, and return information about inputs when desired. We'd still be able to search inputs from a repl anyway. | 22:44:46 |
28 Sep 2021 |
@gytis-ivaskevicius:matrix.org | guys | 12:38:43 |
@gytis-ivaskevicius:matrix.org | what if we were to add a custom check here https://github.com/NixOS/nix/blob/master/src/libexpr/flake/call-flake.nix#L19 to see if imported flake is attr set or function | 12:39:05 |
@gytis-ivaskevicius:matrix.org | and if it is a function - we could pass lib with custom functions | 12:39:24 |
@gytis-ivaskevicius:matrix.org | (which would allow flattening inputs) | 12:39:39 |
@gytis-ivaskevicius:matrix.org | tho I doubt that eelco will approve such 'feature' due to it being impure | 12:40:34 |
@timdeh:matrix.org | How about a mechanism or perhaps a nix plugin that allows you to inject your own "call-flake.nix"? | 15:02:22 |
@gytis-ivaskevicius:matrix.org | this would equal injection of any kind of logic to inputs section which is supposed to be cheap to evaluate (according to eelco) | 15:29:44 |
@gytis-ivaskevicius:matrix.org | So we might as well disable the protection that currently stops us from defining logic there | 15:30:21 |
@gytis-ivaskevicius:matrix.org | To be fair inputs in toml file thingy is a solid solution here | 15:31:05 |
@gytis-ivaskevicius:matrix.org | but thats basically redesigning good chunk of existing flakes logic | 15:31:30 |
@timdeh:matrix.org | yeah, I dunno, having inputs in the flake.nix and the lock file is starting to get a little smelly for me, but maybe it's just the verbosity of the current implementation 😅 | 15:33:20 |
@timdeh:matrix.org | I'd say go ahead with a POC and maybe a PR and we'll see how it goes | 15:35:17 |
@gytis-ivaskevicius:matrix.org | Not sure what exactly was proposed in that unofficial roadmap but just now I played around with toml format and this is what I managed to define:
[github.NixOS.nixpkgs.release-21.05]
lastModified = 1632660378
narHash = 'sha256-sjA8eQlnyDjDLyAyq3XlJmN0nqW0ftl/pb7VnMg86L0='
owner = 'nixos'
repo = 'nixpkgs'
rev = '31ffc50c571e6683e9ecc9dbcbd4a8e9914b4497'
| 15:39:31 |
@gytis-ivaskevicius:matrix.org | Not perfect, also I am not sure how I feel about file being editable AND automagically modifiable | 15:40:19 |
@gytis-ivaskevicius:matrix.org | welp, and ofc once we have this we can perform whatever mapping logic using Nix | 15:41:09 |
@gytis-ivaskevicius:matrix.org | *lastModified should probably be in human readable format | 15:44:03 |
@gytis-ivaskevicius:matrix.org | hold on,im dumb. Forgot to remove 'owner' and 'repo' 😀 | 16:07:01 |
@gytis-ivaskevicius:matrix.org | * Not sure what exactly was proposed in that unofficial roadmap but just now I played around with toml format and this is what I managed to define:
[github.NixOS.nixpkgs.release-21.05]
lastModified = 1632660378
narHash = 'sha256-sjA8eQlnyDjDLyAyq3XlJmN0nqW0ftl/pb7VnMg86L0='
rev = '31ffc50c571e6683e9ecc9dbcbd4a8e9914b4497'
| 16:07:13 |
@gytis-ivaskevicius:matrix.org | * Not sure what exactly was proposed in that unofficial roadmap but just now I played around with toml format and this is what I managed to define:
[github.NixOS.nixpkgs.release-21.05]
lastModified = 1979-05-27T07:32:00-08:00
narHash = 'sha256-sjA8eQlnyDjDLyAyq3XlJmN0nqW0ftl/pb7VnMg86L0='
rev = '31ffc50c571e6683e9ecc9dbcbd4a8e9914b4497'
| 16:08:37 |
@gytis-ivaskevicius:matrix.org | Ah, there is another issue with this toml | 16:10:24 |