Skip to content

fix: Ensure bit-for-bit reproducibility of AppImage builds.

2735bd7
Select commit
Loading
Failed to load commit list.
Merged

fix: Ensure bit-for-bit reproducibility of AppImage builds. #193

fix: Ensure bit-for-bit reproducibility of AppImage builds.
2735bd7
Select commit
Loading
Failed to load commit list.
Mergeable / Mergeable succeeded Feb 15, 2026 in 0s

3 checks passed!

Status: PASS

Details

✔️ Validator: TITLE

  • ✔️ All the requisite validations passed for 'or' option
    Input : fix: Ensure bit-for-bit reproducibility of AppImage builds.
    Settings : {"or":[{"must_include":{"regex":"^(feat|docs|chore|cleanup|fix|refactor|test|style|perf)(\\([^) ]+\\))?:\\ .+$","message":"Semantic release conventions must be followed."}},{"must_include":{"regex":"^Bump [^ ]* from [^ ]* to [^ ]*$","message":"Dependabot PRs are exempt from semantic release conventions."}}]}

✔️ Validator: COMMIT

  • ✔️ Your commit messages met the specified criteria
    Input : fix: Ensure bit-for-bit reproducibility of AppImage builds.

Normalization of file timestamps and permissions was happening before
some plugins were copied and the deploy step was run, making files in
the AppDir non-deterministic. We now move the normalization to just
before AppImage creation.

Also, stop unsetting SOURCE_DATE_EPOCH during packaging. To avoid
conflicts with appimagetool's -fstime argument (which defaults to
the current time), wrap mksquashfs to strip the -fstime flag,
allowing it to honor the environment variable for the SquashFS
superblock.
Settings : {"do":"commit","message":{"regex":"^((feat|docs|chore|cleanup|fix|refactor|test|style|perf)(\\([^) ]+\\))?:\\ .+|Bump [^ ]* from [^ ]* to [^ ]*)","message":"Semantic release conventions must be followed."}}

✔️ Validator: DESCRIPTION

  • ✔️ description must exclude '\[ \]'
    Input : Normalization of file timestamps and permissions was happening before some plugins were copied and the deploy step was run, making files in the AppDir non-deterministic. We now move the normalization to just before AppImage creation.

Also, stop unsetting SOURCE_DATE_EPOCH during packaging. To avoid conflicts with appimagetool's -fstime argument (which defaults to the current time), wrap mksquashfs to strip the -fstime flag, allowing it to honor the environment variable for the SquashFS superblock.


This change is Reviewable

Settings : {"must_exclude":{"regex":"\\\\[ \\\\]","message":"There are incomplete TODO task(s) unchecked."}}