Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add AppImage support to Linux builds #3688

Merged
merged 60 commits into from Oct 16, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
92eae8f
Initial version
tresf Jul 7, 2017
8dcbd19
Better messaging, rename and move to bulid dir
tresf Jul 7, 2017
5004eb7
Remove newlines
tresf Jul 7, 2017
74db001
Various fixes; untested
tresf Jul 8, 2017
91a000b
linuxdeployqt build inst, hack the .desktop file
tresf Jul 8, 2017
84de8cd
First working copy
tresf Jul 9, 2017
2b7dead
Fix download logic
tresf Jul 9, 2017
0e5ef88
Misc fixes
tresf Jul 9, 2017
62eea51
Remove unecessary command
tresf Jul 9, 2017
9beb316
Make AppRun aware of its parent directory
tresf Jul 9, 2017
0f99d4e
Typo
tresf Jul 9, 2017
040cc3c
Remove unecessary comment
tresf Jul 9, 2017
d4fe98a
Fix zyn linking attempt, misc cleanup
tresf Jul 9, 2017
8bea395
Add AppDir/usr/lib to LD_LIBRARY_PATH too
tresf Jul 9, 2017
62a57ff
Try to fix icon
tresf Jul 10, 2017
31fb899
Misc cleanup
tresf Jul 10, 2017
fc9f0f1
More cleanup
tresf Jul 10, 2017
6141c4d
Fix confusing ordering
tresf Jul 10, 2017
c33c4e5
Fix shellcheck, cosmetic stuff
tresf Jul 11, 2017
bf9d74b
Prevent making image from /usr/local
tresf Jul 11, 2017
eb5e819
Fix mimetype icon, Deb[ug] flags
tresf Jul 11, 2017
803b3a0
Fix menu icon
tresf Jul 11, 2017
8d89fd7
Attempt fix mimetypes
tresf Jul 13, 2017
0da1e6b
Mime work
tresf Jul 13, 2017
b301b04
Attempt to fix Qt58 compilation
tresf Jul 15, 2017
2982940
unset LD_LIBRARY_PATH
tresf Jul 15, 2017
7207675
More C++11/Qt5.8 fixes
tresf Jul 15, 2017
1cf825e
Fix LADSPA on Windows
tresf Jul 15, 2017
cea0622
Clean papu
tresf Jul 15, 2017
45a9c43
Fix VirtualBox crash
tresf Jul 15, 2017
ee7b988
Use weak loading of libjack
tresf Jul 17, 2017
064beb5
Fix weakjack
tresf Jul 17, 2017
dca8f97
Fix download cache logic
tresf Jul 18, 2017
22b88a0
Fix shellcheck warnings
tresf Jul 18, 2017
d923fe6
Merge branch 'stable-1.2' into appimage
tresf Jul 24, 2017
64e04d1
New approach at Zyn and VST linking
tresf Jul 24, 2017
04a42f7
Locate missing wine libs
tresf Jul 24, 2017
350c4d7
Remove wine workaround
tresf Jul 24, 2017
4271498
Handle alternative wine
tresf Jul 24, 2017
7f5a9f6
Clean up wine dependencies
tresf Jul 25, 2017
408a08e
Better wine workaround messaging
tresf Jul 25, 2017
4b4e754
Fix unecessary dirname logic
tresf Jul 21, 2017
752b7fa
Force linuxdeployqt to use cmake's qmake version
tresf Jul 25, 2017
43f9850
Add wine prefix to cmake
tresf Jul 25, 2017
2552305
More wine linking fixes
tresf Jul 25, 2017
208575b
Even more wine fixes
tresf Jul 25, 2017
33647a0
Yet another wine fix
tresf Jul 25, 2017
0fed492
Remove LD_LIBRARY_PATH from launcher
tresf Jul 26, 2017
8241043
Fix Zyn
tresf Jul 26, 2017
4a1ec1b
Prevent linking of .exe.so files
tresf Jul 26, 2017
c5cc585
Use forked linuxdeployqt to avoid libwine.so.1
tresf Jul 27, 2017
2c06b0d
Fix LADSPA linking
tresf Jul 27, 2017
a5ea5e9
Fix shellcheck warnings
tresf Jul 27, 2017
720a637
Consistent cmake message
tresf Jul 28, 2017
762e35b
Switch to appimagetool
tresf Aug 1, 2017
c727d9d
Fix shellcheck
tresf Aug 1, 2017
0382b69
Add stk rawwaves
tresf Aug 3, 2017
8bc9e9d
Add support for HiDPI screens
tresf Sep 20, 2017
a553aac
Revert "Fix weakjack"
tresf Oct 16, 2017
596c776
Revert "Use weak loading of libjack"
tresf Oct 16, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .travis/linux..install.sh
@@ -1,7 +1,7 @@
#!/usr/bin/env bash

PACKAGES="cmake libsndfile-dev fftw3-dev libvorbis-dev libogg-dev libmp3lame-dev
libasound2-dev libjack-dev libsdl-dev libsamplerate0-dev libstk0-dev
libasound2-dev libjack-dev libsdl-dev libsamplerate0-dev libstk0-dev stk
libfluidsynth-dev portaudio19-dev wine-dev g++-multilib libfltk1.3-dev
libgig-dev libsoundio-dev"

Expand Down
9 changes: 8 additions & 1 deletion CMakeLists.txt
Expand Up @@ -152,6 +152,9 @@ IF(WANT_QT5)
Qt5::Xml
)

# Resolve Qt5::qmake to full path for use in packaging scripts
GET_TARGET_PROPERTY(QT_QMAKE_EXECUTABLE "${Qt5Core_QMAKE_EXECUTABLE}" IMPORTED_LOCATION)

FIND_PACKAGE(Qt5Test)
SET(QT_QTTEST_LIBRARY Qt5::Test)
ELSE()
Expand Down Expand Up @@ -424,7 +427,11 @@ IF(WANT_VST)
FIND_PACKAGE(Wine)
IF(WINE_FOUND)
SET(LMMS_SUPPORT_VST TRUE)
SET(STATUS_VST "OK")
IF(WINE_LIBRARY_FIX)
SET(STATUS_VST "OK, with workaround linking ${WINE_LIBRARY_FIX}")
ELSE()
SET(STATUS_VST "OK")
ENDIF()
ELSEIF(WANT_VST_NOWINE)
SET(LMMS_SUPPORT_VST TRUE)
SET(STATUS_VST "OK")
Expand Down
19 changes: 17 additions & 2 deletions cmake/linux/CMakeLists.txt
@@ -1,4 +1,19 @@
INSTALL(FILES lmms.png DESTINATION "${DATA_DIR}/pixmaps")
INSTALL(FILES lmms DESTINATION "${DATA_DIR}/menu")
INSTALL(FILES lmms.svg DESTINATION "${DATA_DIR}/icons/hicolor/scalable/apps")
INSTALL(FILES project.svg DESTINATION "${DATA_DIR}/icons/hicolor/scalable/mimetypes/" RENAME "application-x-lmms-project.svg")
INSTALL(FILES lmms.desktop DESTINATION "${DATA_DIR}/applications")
INSTALL(FILES lmms.xml DESTINATION "${DATA_DIR}/mime/packages")

# AppImage creation target
SET(APPIMAGE_FILE "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${VERSION}-linux-${CMAKE_SYSTEM_PROCESSOR}.AppImage")

CONFIGURE_FILE("package_linux.sh.in" "${CMAKE_BINARY_DIR}/package_linux.sh" @ONLY)

FILE(REMOVE "${APPIMAGE_FILE}")
ADD_CUSTOM_TARGET(removeappimage
COMMAND rm -f "${APPIMAGE_FILE}"
COMMENT "Removing old AppImage")
ADD_CUSTOM_TARGET(appimage
COMMAND chmod +x "${CMAKE_BINARY_DIR}/package_linux.sh"
COMMAND "${CMAKE_BINARY_DIR}/package_linux.sh"
COMMENT "Generating AppImage")
ADD_DEPENDENCIES(appimage removeappimage)
2 changes: 1 addition & 1 deletion cmake/linux/lmms
@@ -1,4 +1,4 @@
?package(lmms):needs="X11" section="Apps/Sound" \
title="LMMS" hints="Audio" command="/usr/bin/lmms" \
longtitle="LMMS" \
icon="/usr/share/pixmaps/lmms.png"
icon="/usr/share/icons/hicolor/scalable/apps/lmms.svg"
4 changes: 2 additions & 2 deletions cmake/linux/lmms.desktop
@@ -1,10 +1,10 @@
[Desktop Entry]
Name=LMMS
GenericName=music production suite
GenericName=Music production suite
GenericName[ca]=Programari de producció musical
GenericName[de]=Software zur Musik-Produktion
GenericName[fr]=Ensemble pour la production musicale
Comment=easy music production for everyone!
Comment=Music sequencer and synthesizer
Comment[ca]=Producció fàcil de música per a tothom!
Comment[fr]=Production facile de musique pour tout le monde !
Icon=lmms
Expand Down