| 16 May 2024 |
puck | (see src/nix/get-env.sh) | 23:12:48 |
delroth | also I'm not sure why but you can chain built derived paths | 23:14:31 |
delroth | like, /nix/store/...-foo.drv^out^out^out | 23:14:51 |
puck | yes! this is for dynamic drvs. | 23:14:57 |
puck | it's ... not very good | 23:15:02 |
delroth | it's also not supported by nix build | 23:15:13 |
delroth | which uh | 23:15:15 |
delroth | raises the question of "why", once again | 23:15:21 |
delroth | ok ???? Nix | 23:36:48 |
delroth | I made the parser fail to parse /nix/store/dr53sp25hyfsnzjpm8mh3r3y36vrw3ng-neovim-0.9.5^out (because it's not a .drv) | 23:36:59 |
delroth | and the resulting behavior is: | 23:37:08 |
delroth | nix build '/nix/store/dr53sp25hyfsnzjpm8mh3r3y36vrw3ng-neovim-0.9.5^out'
path '/nix/store/dr53sp25hyfsnzjpm8mh3r3y36vrw3ng-neovim-0.9.5' does not contain a 'flake.nix', searching up
error: could not find a flake.nix file
| 23:37:26 |
delroth | * $ nix build '/nix/store/dr53sp25hyfsnzjpm8mh3r3y36vrw3ng-neovim-0.9.5^out'
path '/nix/store/dr53sp25hyfsnzjpm8mh3r3y36vrw3ng-neovim-0.9.5' does not contain a 'flake.nix', searching up
error: could not find a flake.nix file
| 23:37:31 |
puck | ......uh, why did it cronch the ^out | 23:37:39 |
delroth | I think when a store path fails to parse on the command line it assumes it's a flake ref? | 23:40:31 |
delroth | no clue where the ^out went, but that's like, second level of brokenness, I didn't look that far | 23:40:46 |
Qyriad | that sounds like it didn't recognize that you passed it a store path | 23:41:15 |
delroth | so obviously it must be a flake | 23:41:28 |
delroth | not an error to show to the user, no no | 23:41:31 |
delroth | aaaaaa | 23:41:34 |
julia | wonder if it just tried a bunch of types in order lol to see which one works I'm sure that's fine | 23:41:54 |
Qyriad | flakes-by-default is a terrible 'feature' of installables | 23:41:54 |
julia | * wonder if it just tried a bunch of parse variations in order lol to see which one works I'm sure that's fine | 23:42:09 |
puck | In reply to @julia:the-apothecary.club wonder if it just tried a bunch of parse variations in order lol to see which one works I'm sure that's fine no, because the ^out dropped | 23:42:18 |
julia | mm | 23:42:45 |
Qyriad | I'm pretty sure it's literally like:
if is_store_path():
do_store_path_stuff()
else:
do_flake_stuff() | 23:42:49 |
delroth | $ nix build /foo^out
path '/foo' does not contain a 'flake.nix', searching up
error: getting status of '/foo': No such file or directory
| 23:43:03 |
delroth | (with a "clean" Lix from main, not with my changes) | 23:43:18 |
Qyriad | yeah that's what we would expect | 23:43:28 |
delroth | I wasn't expecting "^out" to just drop | 23:43:36 |