7ed93bcbc2
linuxdeploy auto-walks every binary in the staged AppDir with ldd to
bundle their shared-library deps. That fights jpackage's self-contained
output on two axes and aborts the createReleaseAppImage task before any
AppImage is produced:
- The bundled JRE puts libjvm.so at usr/lib/runtime/lib/server/, while
its sibling libs (libmanagement.so, libawt_xawt.so, libfontmanager.so
and others in usr/lib/runtime/lib/) have RPATH=$ORIGIN. ldd cannot
resolve libjvm.so from those libs without help, so linuxdeploy errors:
ERROR: Could not find dependency: libjvm.so
ERROR: Failed to deploy dependencies for existing files
- The bundled libvlc plugins under usr/lib/app/resources/vlc/ are
UPX-compressed by the vlc-setup plugin. patchelf cannot read their
section headers, so linuxdeploy aborts:
ERROR: Call to patchelf failed:
patchelf: no section headers. The input file is probably a
statically linked, self-decompressing binary
- Even after working around libjvm.so via LD_LIBRARY_PATH, several VLC
libs have RUNPATH pointing at the wrong directory, so ldd fails on
libva.so.2 / libvlccore.so.9 next.
This is why v1.09.2 shipped .deb + .rpm from the linux leg but no
.AppImage and no linux .tar.gz from the linux-portable leg — the gradle
step failed on linuxdeploy, so the subsequent "Build portable archives"
step never ran.
Swap to appimagetool, which only embeds the AppDir as-is into a
SquashFS-backed, runtime-prepended AppImage and never touches the
contents. jpackage already bundles a complete, self-contained app —
we don't need linuxdeploy's dep-discovery. AppRun continues to handle
LD_LIBRARY_PATH at launch.
Verified locally on ubuntu-24.04: a fresh
:desktopApp:createReleaseAppImage now produces a valid 254 MB
Amethyst-1.09.2-x86_64.AppImage in ~30 s on top of an up-to-date
createReleaseDistributable.
Side changes:
- Workflow installs desktop-file-utils (appimagetool 1.9.0 calls
desktop-file-validate on the .desktop entry).
- BUILDING.md updated with the new local-dev fetch command.
- .gitignore replaces the linuxdeploy paths with appimagetool's.
183 lines
3.5 KiB
Plaintext
183 lines
3.5 KiB
Plaintext
/local.properties
|
|
/.idea/caches
|
|
/.idea/libraries
|
|
/.idea/modules.xml
|
|
/.idea/workspace.xml
|
|
/.idea/navEditor.xml
|
|
/.idea/assetWizardSettings.xml
|
|
/.idea/androidTestResultsUserPreferences.xml
|
|
/.idea/deploymentTargetDropDown.xml
|
|
/.idea/deploymentTargetSelector.xml
|
|
/.idea/appInsightsSettings.xml
|
|
/.idea/ktlint-plugin.xml
|
|
/.idea/ktfmt.xml
|
|
/.idea/studiobot.xml
|
|
/.idea/other.xml
|
|
/.idea/runConfigurations.xml
|
|
/.idea/ChatHistory_schema_v2.xml
|
|
/.idea/artifacts/*
|
|
/.idea/kotlinNotebook.xml
|
|
/.idea/ChatHistory_schema_v3.xml
|
|
/.idea/markdown.xml
|
|
/.idea/AndroidProjectSystem.xml
|
|
/.idea/deviceManager.xml
|
|
/.idea/inspectionProfiles/
|
|
/.idea/migrations.xml
|
|
/.idea/planningMode.xml
|
|
/desktopApp/vlc-temp/
|
|
/commons/.idea/gradle.xml
|
|
/commons/.idea/misc.xml
|
|
/commons/.idea/workspace.xml
|
|
/quartz/.idea/modules.xml
|
|
/quartz/.idea/workspace.xml
|
|
.DS_Store
|
|
/build
|
|
/captures
|
|
.cxx
|
|
|
|
# superpowers skill
|
|
.superpowers
|
|
docs/brainstorms
|
|
docs/superpowers
|
|
|
|
# Built application files
|
|
*.apk
|
|
*.aar
|
|
*.ap_
|
|
*.aab
|
|
|
|
# Files for the ART/Dalvik VM
|
|
*.dex
|
|
|
|
# Java class files
|
|
*.class
|
|
|
|
# Generated files
|
|
bin/
|
|
gen/
|
|
out/
|
|
# Uncomment the following line in case you need and you don't have the release build type files in your app
|
|
# release/
|
|
|
|
# Gradle files
|
|
.gradle
|
|
.gradle/
|
|
build/
|
|
.kotlin/
|
|
|
|
# Local configuration file (sdk path, etc)
|
|
local.properties
|
|
|
|
# Proguard folder generated by Eclipse
|
|
proguard/
|
|
|
|
# Log Files
|
|
*.log
|
|
|
|
# Android Studio
|
|
/*/build/
|
|
/*/local.properties
|
|
/*/out
|
|
/*/*/build
|
|
/*/*/production
|
|
captures/
|
|
.navigation/
|
|
*.ipr
|
|
*~
|
|
*.swp
|
|
|
|
# IntelliJ
|
|
*.iml
|
|
*.iws
|
|
/out/
|
|
deploymentTargetDropdown.xml
|
|
render.experimental.xml
|
|
|
|
# User-specific configurations
|
|
.idea/**/caches/
|
|
.idea/**/libraries/
|
|
.idea/**/shelf/
|
|
.idea/**/codeStyles
|
|
.idea/**/workspace.xml
|
|
.idea/**/tasks.xml
|
|
.idea/**/.name
|
|
.idea/**/compiler.xml
|
|
.idea/**/copyright/profiles_settings.xml
|
|
.idea/**/encodings.xml
|
|
.idea/**/misc.xml
|
|
.idea/**/modules.xml
|
|
.idea/**/scopes/scope_settings.xml
|
|
.idea/**/dictionaries
|
|
.idea/**/vcs.xml
|
|
.idea/**/jsLibraryMappings.xml
|
|
.idea/**/datasources.xml
|
|
.idea/**/dataSources.ids
|
|
.idea/**/sqlDataSources.xml
|
|
.idea/**/dynamic.xml
|
|
.idea/**/uiDesigner.xml
|
|
.idea/**/assetWizardSettings.xml
|
|
.idea/**/gradle.xml
|
|
.idea/**/jarRepositories.xml
|
|
.idea/**/navEditor.xml
|
|
|
|
# Keystore files
|
|
# Uncomment the following lines if you do not want to check your keystore files in.
|
|
#*.jks
|
|
#*.keystore
|
|
|
|
# External native build folder generated in Android Studio 2.2 and later
|
|
.externalNativeBuild
|
|
.cxx/
|
|
|
|
# Google Services (e.g. APIs or Firebase)
|
|
# google-services.json
|
|
|
|
# Freeline
|
|
freeline.py
|
|
freeline/
|
|
freeline_project_description.json
|
|
|
|
# fastlane
|
|
fastlane/report.xml
|
|
fastlane/Preview.html
|
|
fastlane/screenshots
|
|
fastlane/test_output
|
|
fastlane/readme.md
|
|
|
|
# Version control
|
|
vcs.xml
|
|
|
|
# lint
|
|
lint/intermediates/
|
|
lint/generated/
|
|
lint/outputs/
|
|
lint/tmp/
|
|
# lint/reports/
|
|
|
|
# Local task tracking
|
|
TASKS.md
|
|
|
|
# Claude Code local settings
|
|
.claude/settings.local.json
|
|
.claude/scheduled_tasks.lock
|
|
|
|
# Downloaded VLC binaries (vlc-setup plugin)
|
|
desktopApp/src/jvmMain/appResources/linux/
|
|
desktopApp/src/jvmMain/appResources/macos/
|
|
desktopApp/src/jvmMain/appResources/windows/
|
|
|
|
# CI-fetched AppImage tooling (downloaded by create-release workflow; not committed)
|
|
desktopApp/packaging/appimage/appimagetool-x86_64.AppImage
|
|
desktopApp/packaging/appimage/squashfs-root/
|
|
|
|
# Git worktrees
|
|
.worktrees/
|
|
.claude/worktrees/
|
|
benchmark/src/main/jniLibs/
|
|
|
|
/tools/marmot-interop/state
|
|
|
|
# Cargo build artifacts for the cross-stack interop sidecars at
|
|
# nestsClient/tests/hang-interop/. Cargo.lock is committed (binary workspace).
|
|
/nestsClient/tests/hang-interop/target/
|