Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
Bloop: 1.3.4 -> 1.4.1 #89359
Motivation for this change
Update bloop to the latest version
cc maintainer @Tomahna
There is one thing I'm not sure about.
For the cli,
I tried to create a link to both
but it doesn't work :
First few lines of
So it's a wrapper with two additional variables set and some binary code (not sure what it does).
It seems that nixpkgs will link only visible files from
It works in the end, but maybe there is a better solution....
This may be relevant, how the Arch package is produced
So first of all, sorry of letting this wait for so long. I've been aiming to review this for more than a week now.
Note that the old way of packaging still work with bloop 1.4.+.
Currently, I'm not able to build this. I end up with an exception. (looking into it)
Ok so for the problem of AccessDeniedException: /home, adding
The bloop script use a relative path to find .bloop.aux, it does not follow relative link. The AUR package faces the same problem and replace
Along the line of following more closely what is done in the AUR package, I have got something along this line. (Note that it does not work yet, it's still a work in progress)
The original proposal needs at least the
Ok the above seems to works properly.
A few small gotcha's:
How do you prefer to proceed with this MR @karolchmist ? I see 3 way of going forward (if you see any other, feel free to suggest):
I'm fine with all options. My preference is with 2 as it limits the number of PR (contrary to 1) and don't make disappear the work you've put into this (contrary to 3).
Hello @Tomahna, thank you for your version, it's much nicer now
Option 2 seems the best to me as well, so I committed your last suggestion (with modified
I rebased on latest
For me it's good to merge, if you agree.
We have a misunderstanding. The outputHash should not change, it actually has to be constant for the derivation to work otherwise other people will not be able to use it properly. I thought that removing the binary part of the coursier script would be sufficient but it appears it is not.
The problem seems to be that we cannot patch the binary and the shell script in a fixed output derivation. This makes sense as by patching the binary and the script, we make their output hash dependent of the environment (the version of bash, the version of zlib, etc). And each time the environment change, the outputHash will change. It is something we need to avoid.
We can apply the patches in the final derivation, but I guess it would mean we need to copy (instead of just link it) the bloop binary in the final directory. So we would have the binary twice in the nix-store. I don't know if someone more proficient with nix than me sees another way out of it ?
I don't see a better approach than this suggestion (yes it's 40MB less on my disk but hey, when I run nix-gc I get 100GB back!), in fact, the final patching I'd say is not build, but