Skip to content

Add Cathode - #10969

Open
probonopd wants to merge 1 commit into
masterfrom
discover/Cathode
Open

probonopd wants to merge 1 commit into
masterfrom
discover/Cathode

Conversation

@probonopd

Copy link
Copy Markdown
Member

Repository: https://github.com/andunieee/cathode

a batteries-included YouTube player for the desktop powered by yt-dlp and mpv

  • Stars: 18
  • Release with the AppImage: v0.4.0 (2026-10-28T21:38:33Z)
  • AppImage asset: cathode-linux-x86_64-v0.4.0.AppImage
  • License: unknown

Found by .github/workflows/discover-apps.yml, which looks for GitHub
repositories that publish AppImages but are not in the catalog yet. This
entry was not tested by a human; please review it before merging.

Discovered on GitHub as publishing AppImages on its releases, by
discover-apps.yml. Needs a maintainer's review.
@github-actions github-actions Bot added error-app-exits Test failed: the application quit or crashed right after starting error-missing-library Test failed: see the test result comment labels Oct 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

❌ Test failure

@andunieee: this pull request adds the AppImage from your GitHub repository to the AppImage catalog; the test reports the following. Could you have a look?

Tested:

Compatibility: not self-contained: uses the C library of the system; references glibc 2.39

Names:

WARNING: AppImage name 'cathode-linux-x86_64-v0.4.0.AppImage': should not contain 'Linux', since all AppImages are for Linux (e.g. 'App-1.0-x86_64.AppImage', not 'App-1.0-linux-x86_64.AppImage')
  • The application needs a library that is neither in the AppImage nor on the test system ("error while loading shared libraries", the first error below names it). Please bundle this library, and what it depends on, in the AppImage: an AppImage cannot rely on libraries that are not installed on every target system.
  • The application quit or crashed right after starting; the error below usually shows why. Note that the test runs the application without network access, on purpose, and that this is a requirement for the catalog: an AppImage must start without network (users are offline too). If the application needs a server, a login or an update check to start, please make it show its window (or at least a message) first and connect afterwards, and handle a failed connection instead of exiting.
  • Please check the remarks about the names below.

First error in the log:

/run/firejail/appimage/AppRun.wrapped: error while loading shared libraries: libpipewire-0.3.so.0: cannot open shared object file: No such file or directory

ERROR: The application exited within 11 seconds instead of showing a window

What next: once the AppImage is fixed (e.g. in a new release), comment /retest here to test it again. If it should not be in the catalog after all, close this pull request; an app that is already in the catalog can be removed by a maintainer with /remove.

Commit 6fb0ebb. Full log

@andunieee

Copy link
Copy Markdown

/retest

@probonopd probonopd closed this Oct 30, 2026
@probonopd probonopd reopened this Oct 30, 2026
@github-actions github-actions Bot added error-glibc-too-new Test failed: built on a too new system (needs a newer glibc) and removed error-missing-library Test failed: see the test result comment labels Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

❌ Test failure

Tested:

Compatibility: not self-contained: uses the C library of the system; references glibc 2.39

  • The AppImage needs a newer C library (glibc, or the C++ library libstdc++) than the test system has; the error names the version that is missing (e.g. GLIBC_2.38). The test runs on the oldest Ubuntu LTS release that is still in standard support (see https://ubuntu.com/about/release-cycle), because an AppImage is meant to run on any current Linux distribution, including older ones, and glibc can only be as old as the system the AppImage was built on: a program built on a newer system links against symbols that older systems do not have. The fix is to build on the oldest still-supported LTS release (in GitHub Actions, the oldest ubuntu-* runner still offered, or a container of that release), not on the newest system. If the program itself needs a newer compiler, build in a container of the old release with a newer toolchain (e.g. the toolchain PPAs), statically link what needs it, or bundle the C library together with its dynamic loader (ld-linux) in the AppImage: then the host's glibc does not matter at all (the test reports X-AppImage-Libc=bundled). See https://docs.appimage.org/reference/best-practices.html#binaries-compiled-on-old-enough-base-system
  • The application quit or crashed right after starting; the error below usually shows why. Note that the test runs the application without network access, on purpose, and that this is a requirement for the catalog: an AppImage must start without network (users are offline too). If the application needs a server, a login or an update check to start, please make it show its window (or at least a message) first and connect afterwards, and handle a failed connection instead of exiting.

First error in the log:

/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/AppRun.wrapped)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: weak version `GLIBC_2.39' not found (required by /run/firejail/appimage/AppRun.wrapped)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libmpv.so.2)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libadwaita-1.so.0)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libgtk-4.so.1)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libgtk-4.so.1)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libpango-1.0.so.0)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libcairo.so.2)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libcairo.so.2)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libgio-2.0.so.0)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libglib-2.0.so.0)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libass.so.9)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /run/firejail/appimage/usr/bin/../lib/libavfilter.so.10)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libavfilter.so.10)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /run/firejail/appimage/usr/bin/../lib/libplacebo.so.349)
/run/firejail/appimage/AppRun.wrapped: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /run/firejail/appimage/usr/bin/../lib/libplacebo.so.349)

What next: once the AppImage is fixed (e.g. in a new release), comment /retest here to test it again. If it should not be in the catalog after all, close this pull request; an app that is already in the catalog can be removed by a maintainer with /remove.

Commit 6fb0ebb. Full log

@andunieee

Copy link
Copy Markdown

this is very unfortunate, I'll fix

@andunieee

Copy link
Copy Markdown

/retest

@probonopd probonopd closed this Oct 30, 2026
@probonopd probonopd reopened this Oct 30, 2026
@github-actions github-actions Bot removed error-app-exits Test failed: the application quit or crashed right after starting error-glibc-too-new Test failed: built on a too new system (needs a newer glibc) labels Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ Test passed

Please check that the screenshot shows the application's main window.

Cathode

Cathode

Tested:

Compatibility: self-contained (ships its own C library)

Warnings:

  • The screenshot may show an error message; please check it.
  • The AppImage contains no update information, so users cannot update it with AppImageUpdate or similar tools. Please consider embedding it when building the AppImage (e.g., appimagetool -u) and publishing the .zsync file next to the AppImage; see https://docs.appimage.org/packaging-guide/optional/updates.html

Commit 6fb0ebb. Full log

@FreyFlyy FreyFlyy 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

@probonopd

Copy link
Copy Markdown
Member Author

yt-dlp needs to be bundled.

@probonopd probonopd added the error-message-on-screen Test failed: the screenshot shows an error message label Oct 30, 2026
@andunieee

Copy link
Copy Markdown

It can't be bundled because it has to be updated all the time.

@probonopd probonopd closed this Oct 30, 2026
@probonopd probonopd reopened this Oct 30, 2026
@andunieee

Copy link
Copy Markdown

But I guess I can try to bundle it, as well as ffmpeg and deno which are yt-dlp dependencies? I don't know if this makes sense.

@github-actions github-actions Bot removed the error-message-on-screen Test failed: the screenshot shows an error message label Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ Test passed

Please check that the screenshot shows the application's main window.

Cathode

Cathode

Tested:

Compatibility: self-contained (ships its own C library)

Warnings:

  • The screenshot may show an error message; please check it.
  • The AppImage contains no update information, so users cannot update it with AppImageUpdate or similar tools. Please consider embedding it when building the AppImage (e.g., appimagetool -u) and publishing the .zsync file next to the AppImage; see https://docs.appimage.org/packaging-guide/optional/updates.html

Commit 6fb0ebb. Full log

This branch has not been deployed

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants