feat(metainfo,desktop): polish for Flathub listing readiness - #17
Merged
Merged
Conversation
- metainfo: release entry gets <description> + <url>. Flathub renders these in the listing's "What's New" panel; without them the catalogue shows only the release date. - desktop files: add GenericName + Keywords. GenericName improves the app's secondary label in modern launchers (KDE Plasma's krunner, GNOME Shell's overview); Keywords help search match alternative spellings (p2p/peer-to-peer, ed2k/edonkey, etc.). Translations for GenericName cover the same locale set already present in the existing Comment[lang]= entries on each desktop file. Keywords are kept English-only — the freedesktop spec allows Keywords[lang] but it's rarely used in practice and English search terms cover the vast majority of launcher queries.
got3nks
added a commit
that referenced
this pull request
Jun 8, 2026
Stages the Flathub-strict version of the aMule Flatpak manifest in `packaging/flathub/` — the file that will be submitted to flathub/flathub once domain attestation for the app-id is resolved. Differences from the internal `packaging/linux/flatpak/org.amule.aMule.yaml.in`:
- All `${...}` template variables resolved to concrete values (Flathub forbids envsubst).
- The amule source: `branch:` swapped for `tag: + commit:` (Flathub forbids mutable refs).
- The cryptopp source: existing tag augmented with a pinned commit.
Pinned at master tip post-#15 (icon refresh), #17 (metainfo / desktop polish), and #19 (ENABLE_BFD option). Carries -DENABLE_BFD=NO so the Flathub-built bundle inherits the libbfd-runtime-missing fix.
Companion file `packaging/flathub/README.md` documents the two-manifest layout, the submission flow against flathub/flathub:new-pr, and how to refresh the pin on each new aMule release tag.
got3nks
added a commit
that referenced
this pull request
Jun 14, 2026
…atforms
The macOS-only `std::_Exit(0)` block in OnExit() was added to dodge a
wxWebSessionURLSession dtor bug under wx 3.3.2. Turns out the
Linux backend (wxWebSessionCURL, wx 3.2.6) hits the same class of
shutdown crash: its dtor calls curl_multi_cleanup, libcurl invokes the
registered socket callback (wxWebSessionCURL::SocketCallback) to drop
tracked sockets, and that callback dereferences session state the
dtor's earlier steps have already torn down. wxASSERT fires,
wxFatalSignalHandler raise(SIGABRT)s.
Verified with a debug-symbol Flatpak + gdb on a user-supplied core,
fully symbolicated:
#19 main amule-gui.cpp:98
#18 wxEntry wx/init.cpp:500
#17 wxEntryCleanup wx/init.cpp:205
#16 wxModule::CleanUpModules wx/module.cpp:191
#15 wxModule::DoCleanUpModules wx/module.cpp:200
#14 wxRefCounterMT::DecRef
wxWebSession::Close wx/webrequest.cpp:1074
#13 wxWebSessionCURL::~wxWebSessionCURL wx/webrequest_curl.cpp:932
#12 wxWebSessionCURL::~wxWebSessionCURL wx/webrequest_curl.cpp:929
#11-#6 libcurl curl_multi_cleanup
#5 wxWebSessionCURL::SocketCallback wx/webrequest_curl.cpp:1047
#4 raise()
#3 wxFatalSignalHandler wx/unix/utilsunx.cpp:1523
#0 abort
Same justification used for the macOS guard applies on every
platform: by this point in OnExit we have saved state, joined
threads, and flushed logs -- nothing aMule-owned remains to clean up.
_Exit bypasses atexit and static destructors uniformly, so the buggy
wx dtor never runs and the process terminates cleanly.
Remove this once the upstream wx fix lands in a release we depend on.
Reported in #18.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three small polish items that improve how the aMule listing renders on Flathub and how the app shows up in Linux launchers:
org.amule.aMule.metainfo.xml— the<release version="3.0.0">entry now carries<description>and<url>. Without them, the Flathub catalogue page shows only the date; with them, it shows a short "What's New" blurb + a Read-more link to the 3.0.0 blog post.org.amule.aMule.desktop— addsGenericName=("P2P File Sharing Client") andKeywords=. GenericName improves the app's secondary label in modern launchers (KDE Plasma's krunner, GNOME Shell's overview, Cinnamon's app picker). Keywords increase search recall against alternative spellings (p2p / peer-to-peer, ed2k / edonkey, etc.).org.amule.aMule.gui.desktop— sameGenericName=+Keywords=treatment for amuleGUI.GenericName is translated into the same locale set already covered by the existing
Comment[lang]=entries on each desktop file. Keywords are kept English-only — the freedesktop spec allowsKeywords[lang]=but it's rarely used in practice and the English terms cover the vast majority of launcher queries.Validation
appstreamcli validate --strict --pedantic --no-net: ✔ passes (1 pedantic warning unchanged — uppercase letter in app-id).desktop-file-validateon both desktop files: ✔ clean.Refs
Continues the Flathub-readiness work started in #15 (icon refresh) and #16 (Flathub-strict manifest staging). Once this lands, #16's pending SHA bump is the last mechanical item before submitting to flathub/flathub.