Skip to content

libappimage: add dev output#524183

Open
SuperSandro2000 wants to merge 1 commit into
NixOS:masterfrom
SuperSandro2000:libappimage-dev
Open

libappimage: add dev output#524183
SuperSandro2000 wants to merge 1 commit into
NixOS:masterfrom
SuperSandro2000:libappimage-dev

Conversation

@SuperSandro2000

@SuperSandro2000 SuperSandro2000 commented May 25, 2026

Copy link
Copy Markdown
Member

Diff on my Plasma

cairo: -184.0 KiB
fontconfig: -42.0 KiB
freetype: -884.4 KiB
libappimage: -52.8 KiB
librsvg: -235.7 KiB
libx11: -250.5 KiB
libxcb: -2.1 MiB
libxext: -58.9 KiB
libxrender: -35.3 KiB

Things done

@nixpkgs-ci nixpkgs-ci Bot requested a review from K900 May 25, 2026 20:40
@nixpkgs-ci nixpkgs-ci Bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 2.status: merge-bot eligible This PR can be merged by commenting "@NixOS/nixpkgs-merge-bot merge". labels May 25, 2026
Comment thread pkgs/by-name/li/libappimage/package.nix Outdated

postInstall = ''
# somehow files are installed in both outputs and the fixup hooks fail...
mv $dev/include/appimage/* $out/include/appimage

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The includes should be in $dev, no?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They should, and normally would be, but it looks like their upstream cmake files don't consistently use CMAKE_INSTALL_INCLUDEDIR, so when we specify that on our end we end up with headers in multiple places. I opened a PR to fix that upstream, but I think this workaround is probably fine for now - the headers all get moved to $dev during the fixup phase anyway.

@r-burns r-burns left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. If you're focused on closure size, you may also want to fix their static/shared libraries - it looks like the package output currently contains static libraries with a _shared suffix (?) and the upstream LIBAPPIMAGE_SHARED_ONLY option doesn't seem to work properly. Maybe AppImageCommunity/libappimage#204 improves the situation, haven't tested it myself.

@nixpkgs-ci nixpkgs-ci Bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Jun 15, 2026
Comment on lines +81 to +84
postFixup = ''
substituteInPlace $dev/lib/cmake/libappimage/libappimageTargets.cmake \
--replace-fail "$out" "$dev"
'';

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this still needed after the patch? Also, I haven't tested this, but I suspect the substitution may be a little too aggressive - you don't want to replace $out paths that point to actual $out components, such as the libraries..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.status: merge-bot eligible This PR can be merged by commenting "@NixOS/nixpkgs-merge-bot merge". 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants