Skip to content

Is this still necessary for modern Gtk4/Libadwaita programs? #60

Open
@Korne127

Description

@Korne127

I've recently spent a lot of time looking into AppImages and how to package them.

I noticed that since this plugin has first been developed, the excludelist has been changed. Especially glib and its dependencies are now always bundled in AppImages, see this comment by @probonopd:

Looks like we arrived at the conclusion that Glib/Gdk/Gtk/Pango/Cairo from the operating system usually can't be used and the whole stack of these and other closely related (e.g., libthai and possibly harfbuzz) libraries all need to be privately bundled.

Therefore I am not entirely sure whether this plugin is required anymore. When I tested packaging my Gtk4/Libadwaita project, I noticed that this plugin doesn't seem to be necessary:
I created a new virtual machine and installed Arch on it (with X-Org, LXQt and Openbox) without any GTK dependencies. I then tested both version of my program (packaged with linuxdeploy) on it: One with the GTK plugin and one without. And both worked (without a different terminal output). So I'm not sure whether this plugin is necessary anymore.
For the record, I should mention that I do not use any icon assets of any theme in my project, so I don't know whether the plugin changes anything related to that though.

I did notice one major difference though: While my GTK code uses Libadwaita, the AppImage without this plugin was displayed correctly (with the Libadwaita theme) while the version built with this plugin was displayed with the default theme (as if I hadn't used Libadwaita but just GTK-4). So this is certainly a bug of this plugin that should be fixed. I would have made this a separate issue, but as I'm unsure whether the plugin is needed at all, I'll just keep it here for now.

@TheAssassin Can you maybe explain what this plugin actually does and what it changes with the AppImage? Is there still something I'm missing this plugin is required for? Or is it actually not necessary anymore for Gtk4/Libadwaita?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions