-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to work around upstream archives being removed #160
Comments
It seems you are right regarding I guess another way would be to use a derivation, at least that seems supported: It seems that the |
Actually it seems to work when I test on my machine:
|
Now the question is, how do we know when to go for the |
Confirmed on Nix 2.18.2. Thank you for providing the information. The lzip support is undocumented, but it would be safe to assume the functionality in all future versions of Nix.
The above rewrite could be done in twist if Nix were run in impure mode. It would be possible to define a new mode of operation to fetch and parse the latest version of the archive contents (as done in the current lock operation), compare the versions of each tracked package, and update them if necessary. Unfortunately, I don't think this can be done as part of the pure build process with Nix. I am not totally happy with this workaround. It would be nice if GNU ELPA provided the compressed format for all versions of all packages. |
Yeah, I agree it might be worth requesting this. I can understand not saving the uncompressed version, but I don't see a reason why they couldn't include the compressed version from the start (except that it cannot be directly used, but that goes for all previous versions as well). That would make things easier on our end. |
As reported in #159 (comment), a configuration fails to build if one of the source archives tracked in
archive.lock
is removed from the original location. Using archives is generally safer for packages on GNU ELPA, as some packages on the registry are built in specific ways.Apparently, when a package on GNU ELPA is updated, the previous version is compressed with lzip, and the initial uncompressed archive is removed. This breaks reproducibility of this project. Also,
.tar.lz
is not natively supported by Nix flakes, so it wouldn't fit the current system ofarchive.lock
anyway.I don't come up with a solution right now. Perhaps some extra infrastructure will be needed? I wouldn't be happy with it, but the issue needs to be addressed to make this project usable.
The text was updated successfully, but these errors were encountered: