28 Sep 2021 |
@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 |
@gytis-ivaskevicius:matrix.org | there is no way to define custom arguments like dir | 16:10:38 |
@yusdacra:nixos.dev | In reply to @gytis-ivaskevicius:matrix.org Not perfect, also I am not sure how I feel about file being editable AND automagically modifiable Isn't the point of a lockfile to not be modified? | 16:24:16 |
@yusdacra:nixos.dev | In reply to @gytis-ivaskevicius:matrix.org Not perfect, also I am not sure how I feel about file being editable AND automagically modifiable * Isn't the point of a lockfile to not be modified manually? | 16:24:52 |
@gytis-ivaskevicius:matrix.org | what we are thinking of is not just a lockfile | 16:25:04 |
@gytis-ivaskevicius:matrix.org | a file that would act as a lockfile AND inputs definition | 16:25:16 |
@gytis-ivaskevicius:matrix.org | so you could avoid defining inputs in flake.nix | 16:25:27 |
@gytis-ivaskevicius:matrix.org | and the whole avoidance of defining inputs in flake.nix is due to its limitations | 16:26:00 |
@yusdacra:nixos.dev | Ah so basically to avoid redefining inputs in both places | 16:29:06 |
@yusdacra:nixos.dev | That sounds like it'd be interesting | 16:29:39 |
@yusdacra:nixos.dev | How would you "lock" an input to a certain revision in the example TOML? With flake.nix you can specify the revision in flake.nix and it will be locked, but if you change the rev field here doing a nix flake update would still update it right? | 16:31:43 |
@yusdacra:nixos.dev | * How would you lock an input to a certain revision in the example TOML? With flake.nix you can specify the revision in flake.nix and it will be locked, but if you change the rev field here doing a nix flake update would still update it right? | 16:31:51 |
@timdeh:matrix.org | I was imagining that the inputs in flake.nix are kinda redundant and that cli args could just as easily and remove and modify the lock file directly. So instead of inputs.someflake.url = "github:yada/yada" in the flake.nix you could do something like `nix flake add someflake github:yara/yada" | 17:59:41 |
@timdeh:matrix.org | * I was imagining that the inputs in flake.nix are kinda redundant and that cli args could just as easily add, remove and modify the lock file directly. So instead of inputs.someflake.url = "github:yada/yada" in the flake.nix you could do something like `nix flake add someflake github:yara/yada" | 17:59:56 |
@timdeh:matrix.org | * I was imagining that the inputs in flake.nix are kinda redundant and that cli args could just as easily add, remove and modify the lock file directly. So instead of inputs.someflake.url = "github:yada/yada" in the flake.nix you could do something like nix flake add someflake github:yara/yada" | 18:00:05 |
@yusdacra:nixos.dev | hmm i see | 18:10:49 |
@yusdacra:nixos.dev | That sounds nice TBH | 18:11:32 |
@gytis-ivaskevicius:matrix.org | In reply to @timdeh:matrix.org I was imagining that the inputs in flake.nix are kinda redundant and that cli args could just as easily add, remove and modify the lock file directly. So instead of inputs.someflake.url = "github:yada/yada" in the flake.nix you could do something like nix flake add someflake github:yara/yada" I'd rather have inputs explicitly defined in some file instead of such lock file editing | 18:43:07 |
@gytis-ivaskevicius:matrix.org | but that might be just me | 18:43:12 |
@timdeh:matrix.org | for what purpose though? If you could have a command list them out nicely, you can view the lockfile manually, and you can even explore the inputs in a repl. What does the explicit listing give us? | 18:44:12 |
@gytis-ivaskevicius:matrix.org | I definetelly realize that something like nix flake show could show us all the inputs or even how they follow each other, its just that i would prefer it being managed declaratively | 18:53:36 |
Pacman99 | To me the advantage is readability and clarity. When I look at someone else's flake online I can see what they depend on immediately. The lockfile and json in general is harder to read. | 18:53:39 |
@gytis-ivaskevicius:matrix.org | just a personal preference | 18:53:42 |
@gytis-ivaskevicius:matrix.org | to be fair you probably dont care all that much when it comes to inputs of some random flakes | 18:54:17 |
@gytis-ivaskevicius:matrix.org | or atleast I dont | 18:54:24 |
Pacman99 | And yeah you can def just use nix flake show, but I feel like you should be able to get a summary of the flake without the nix cli | 18:54:35 |