Bug 1667934

Summary: Missing package: squashfskit
Product: [Fedora] Fedora Reporter: D.S. Ljungmark <spider>
Component: squashfs-toolsAssignee: Bruno Wolff III <bruno>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 29CC: bruno, katzj, kyle, lynxis
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-11-27 23:19:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description D.S. Ljungmark 2019-01-21 13:28:46 UTC
Description of problem:
squashfskit is a fork of squashfs-tools, which supports reproducible builds.

https://github.com/squashfskit/squashfskit

It would be really nice if this was supported in Fedora

Comment 1 Bruno Wolff III 2019-01-21 15:35:30 UTC
Are you suggesting replacing Phillip's version of squashfs-tools or a new package?

My suggestion would be to try to get this work upstream. Phillip seems to accept work from other people,

I'm leery of forks of squashfs-tools, but I'm not doing enough work to make that stick.

I do agree that reproducible builds is a nice goal.

Comment 2 D.S. Ljungmark 2019-01-21 16:05:33 UTC
Honestly, I don't rightly care if Fedora replaces squashfs-tools with the fork, merge patches from the fork, or work to get the changes upstream.  I just really want my build-system to work on Fedora and not be dependant on Debian-specific functionality, and maybe even the zstd compressed filesystems as per https://bugzilla.redhat.com/show_bug.cgi?id=1648490

Comment 3 Bruno Wolff III 2019-01-21 16:37:46 UTC
ztsd is upstream in squashfs-tools and the kernel so getting it makes sense. It is a bit more work than it should be as there are a few local patches that were trying to address some security reports that initially were for a fork and the problems may or may not be real in Phillip's tree. They need to get re-evaluated if we refresh from Phillip's tree.

Comment 4 Bruno Wolff III 2019-01-21 17:00:37 UTC
Going with squashfskit is not going to be an option right now as it is missing ztsd. If this gets pursued someone is going to need to isolate the change, review it, merge it, and resolve conflicts. (That's probably what we'd want to do anyway, but I wanted to note there wasn't a quick update to get this feature that will work well for us.)
The API should get reviewed as well, since it isn't upstream.

Comment 5 D.S. Ljungmark 2019-01-21 19:20:43 UTC
Okay, that sounds like a sane path forwards.  I'm a bit sad since squashfs-tools doesn't seem to make releases anymore, and their homepage doesn't match their current releases, or where it (appears) to currently be hosted. But that isn't Fedora's fault, really.

Comment 6 Bruno Wolff III 2019-01-23 00:34:02 UTC
I wish Red Hat paid Phillip to spend at least some of his work time working on squashfs-tools. I don't know if he still does, but he at least used to work for them on other stuff.
As best I can tell Phillip's canonical source tree is on github now.

Comment 7 lynxis 2019-02-27 03:02:22 UTC
Hi Bruno,

I've release squashfskit 4.14 with zstd support.
I'm not familiar with fedora, but I've look on https://src.fedoraproject.org/rpms/squashfs-tools/tree/48fdbae9436aeb419bf4a1985ed2bae6b5d22b99
All listed patches are already applied in the 4.14 release.

It would be nice if you have the time to test squashfskit on fedora usecases. So far I'm using travis as CI, but it's only
compiling squashfskit on Linux & MacOS. No pack & unpack tests (yet).

Best Regards,
lynxis

https://github.com/squashfskit/squashfskit/releases/download/v4.14/squashfskit-v4.14.tar.xz
https://github.com/squashfskit/squashfskit/releases/download/v4.14/squashfskit-v4.14.tar.xz.sig

Comment 8 Bruno Wolff III 2019-05-21 07:31:15 UTC
Right now I am barely getting much Fedora stuff done at all. Switching over to squashfskit is something that should be looked at by other people as to whether or not we want to do that. Someone could also do it as a separate package, though I'm not sure what the project's stance on that will be.
I have done a minor fix to get squashfs-tools building again in f29 and f30. I'm working on switch to Philip's github repo in rawhide. That will get us zstd there.
What to do after that with respect to getting a reproducible build version of squashfs-tools is probably better asked on fedora-devel (please copy me if you start something there so I know to look at the discussion).

Comment 9 Bruno Wolff III 2019-08-19 00:55:39 UTC
Phillip is currently active working toward a 4.4 release and has committed support for reproduceable builds upstream. You might check to see if this will meet your requirements. When 4.4 is out or when the prelease stablizes (if the release doesn't happen after a significant pause), I'll try to get a 4.4 release into rawhide and branched.

Comment 10 Bruno Wolff III 2019-08-29 05:16:46 UTC
4.4 has been released. I'll try to get this into rawhide within a few weeks.

Comment 11 lynxis 2019-08-29 23:29:44 UTC
Maybe a good time upstream the patches in the rpm.

Comment 12 Bruno Wolff III 2019-08-30 18:52:29 UTC
There aren't any patches that we would want to upstream. The man pages aren't carried as patches. They originally came from Debian and we'd need to be careful about licensing before offering them back upstream (after fixing them up for the new release).

Comment 13 Ben Cotton 2019-10-31 18:53:49 UTC
This message is a reminder that Fedora 29 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '29'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 29 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 14 Ben Cotton 2019-11-27 23:19:58 UTC
Fedora 29 changed to end-of-life (EOL) status on 2019-11-26. Fedora 29 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 15 Bruno Wolff III 2020-05-13 06:44:08 UTC
squashfs-tools 4.4 supports reproducible builds. For now I have just built it for rawhide (f33). If there is demand and the update doesn't break composes or anything else (which I don't expect), it could potentially be built for f31 or f32.