I would like to install both multimarkdown and dotnet-sdk_6 but there is a collision:
error: collision between `/nix/store/...-multimarkdown-6.6.0/LICENSE.txt' and `/nix/store/...-dotnet-sdk-6.0.300/LICENSE.txt'
Is there a bug in these packages?
I would like to install both multimarkdown and dotnet-sdk_6 but there is a collision:
error: collision between `/nix/store/...-multimarkdown-6.6.0/LICENSE.txt' and `/nix/store/...-dotnet-sdk-6.0.300/LICENSE.txt'
Is there a bug in these packages?
This is a sign of bad packaging, there definitely should not be any file there, especially not one with a name that common.
Should be reported in nixpkgs as two individual issues pinging respective maintainers.
This probably most often happens because a package doesn’t really require building and someone copied the source to $out
without removing the unnecessary files.
Regardless of how it happened, neither of those packages should have such files in their output. Go ahead and file a nixpkgs bug.
It might be the case thst the license/copyright stipulate thst a copy should still be distributed with the software though, yeah? Is there a more-correct place for it? I think I’ve seen at least one in $out/share before.
I think $out/share/doc/<programname>/LICENSE.txt
is the correct place.
done:
I’ve encountered same issue with OrcaSlicer (not in nixpkgs yet) and GraalVM17 CE:
error: collision between `/nix/store/kgd571ap8x0d62ihiqfyrbssk9b7xs24-graalvm17-ce-22.3.1/LICENSE.txt'
and `/nix/store/g0zb3h9hg8zb1fndsnl9mjnmsiiniahh-orca-slicer-1.6.6/LICENSE.txt'
Should I open PR’s for them as well?
Sure, feel free to do that.
Turned out, I’ve got another error while I was building graalvm17-ce
:
error: graalvm17-ce has been removed because upstream dropped support to different JDK versions for each GraalVM release. Please use graalvm-ce instead
Turns out, that this package is not supported anymore. I think nix should check this first, because this looks more like an actual problem. Still going to do a PR for OrcaSlicer though
Ok, this is still an error:
error: collision between `/nix/store/vbr0f8nnzbcbmb22vp599lvycxcznlm9-graalvm11-ce-22.3.1/LICENSE.txt'
and `/nix/store/g0zb3h9hg8zb1fndsnl9mjnmsiiniahh-orca-slicer-1.6.6/LICENSE.txt'
From building graalvm-ce, I’ve got this output:
~/test2
❯ nix build github:NixOS/nixpkgs#graalvm-ce
~/test2 took 7m46s
❯ l result
Permissions Size User Date Modified Name
dr-xr-xr-x - root 1 Jan 1970 bin
dr-xr-xr-x - root 1 Jan 1970 conf
dr-xr-xr-x - root 1 Jan 1970 include
dr-xr-xr-x - root 1 Jan 1970 jmods
dr-xr-xr-x - root 1 Jan 1970 legal
dr-xr-xr-x - root 1 Jan 1970 lib
dr-xr-xr-x - root 1 Jan 1970 nix-support
lrwxrwxrwx 21k root 1 Jan 1970 LICENSE_NATIVEIMAGE.txt -> lib/svm/LICENSE_NATIVEIMAGE.txt
.r--r--r-- 3.2k root 1 Jan 1970 release
Which files should I move and where? I’m confused by release being a file. Also, all build directories are here…