-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Javier Serrano Polo
committed
Aug 5, 2016
1 parent
7e1209e
commit e5823eb
Showing
4 changed files
with
185 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
#!/bin/bash | ||
set -e | ||
BINDIR="$1" | ||
RUNFILE="$2" | ||
[ "$BINDIR" -a "$RUNFILE" ] | ||
|
||
VERSION=@VERSION@ | ||
|
||
cd "$BINDIR" | ||
[ -e CMakeCache.txt ] | ||
|
||
rm -fr lmms.root | ||
mkdir lmms.root | ||
make install DESTDIR=lmms.root | ||
|
||
cd lmms.root | ||
mv usr/local/* usr | ||
rm -r usr/include usr/local | ||
|
||
strip usr/bin/lmms usr/lib/lmms/RemoteZynAddSubFx usr/lib/lmms/*.so \ | ||
usr/lib/lmms/ladspa/* | ||
|
||
rm -f ../download.log | ||
|
||
# Find required libraries and download the deb files that contain them; | ||
# RemoteVstPlugin.exe.so is not considered | ||
ldd usr/bin/lmms usr/lib/lmms/RemoteZynAddSubFx usr/lib/lmms/lib*.so \ | ||
usr/lib/lmms/ladspa/* | | ||
grep = | | ||
cut -d " " -f 3 | | ||
grep -v usr/lib/lmms | | ||
sort -u | | ||
xargs dpkg -S | | ||
cut -d : -f 1 | | ||
sort -u | | ||
xargs aptitude download | | ||
tee -a ../download.log | ||
|
||
unpack_downloaded_deb() | ||
{ | ||
ls *.deb | | ||
while read DEB | ||
do | ||
dpkg-deb -x $DEB . | ||
done | ||
rm *.deb | ||
} | ||
|
||
unpack_downloaded_deb | ||
|
||
# Fetch missing copyright files | ||
find -L usr/share/doc -maxdepth 1 -type l -printf "%l\n" | | ||
sort -u | | ||
xargs aptitude download | | ||
tee -a ../download.log | ||
|
||
unpack_downloaded_deb | ||
|
||
mv usr/share/applications/lmms.desktop lmms-$VERSION.desktop | ||
sed -e " | ||
/^Name=/ s/LMMS/LMMS $VERSION/ | ||
/^Icon=/ s/lmms/lmms-$VERSION/ | ||
" -i lmms-$VERSION.desktop | ||
|
||
mv usr/share/pixmaps/lmms.png lmms-$VERSION.png | ||
rmdir --ignore-fail-on-non-empty usr/share/pixmaps | ||
|
||
mv usr/share/mime/packages/lmms.xml . | ||
|
||
rm -fr lib64 usr/share/applications usr/share/doc-base usr/share/lintian \ | ||
usr/share/man usr/share/menu usr/share/mime | ||
|
||
find usr/share/doc -type f ! -name copyright -delete | ||
find usr/share/doc -type d -empty -delete | ||
|
||
# libc6 is included, so its loader should be used instead of the system one; | ||
# move the loader to usr/bin because of Qt applicationDirPath() usage | ||
MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH) | ||
mv lib/$MULTIARCH/ld-*.so usr/bin/ld.so | ||
|
||
# FHS requires /opt programs to be in /opt/<package>/bin | ||
mkdir -p bin | ||
|
||
cat > bin/lmms-launcher << EOF | ||
#!/bin/sh | ||
DIR=\$(dirname \$(readlink -f "\$0")) | ||
DIR=\${DIR%/bin} | ||
export LD_LIBRARY_PATH="\$DIR"/lib/$MULTIARCH:"\$DIR"/usr/lib/$MULTIARCH\ | ||
:"\$DIR"/usr/lib/$MULTIARCH/pulseaudio | ||
"\$DIR"/usr/bin/ld.so "\$DIR"/usr/bin/lmms "\$@" | ||
EOF | ||
|
||
chmod a+x bin/lmms-launcher | ||
|
||
cp -a ../../cmake/linux/installer . | ||
|
||
cd .. | ||
makeself --xz --complevel 6 lmms.root "$RUNFILE" LMMS ./installer $VERSION |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
#!/bin/sh | ||
set -e | ||
BINDIR="$1" | ||
BUNDLE_FILE="$2" | ||
[ "$BINDIR" -a "$BUNDLE_FILE" ] | ||
|
||
cd "$BINDIR" | ||
[ -e download.log ] | ||
|
||
rm -fr bundled-source | ||
mkdir bundled-source | ||
cd bundled-source | ||
|
||
grep "^Get:" ../download.log | | ||
sed -re "s/.* ([^ ]+) [^ ]+ ([^ ]+) \[.*/\1=\2/" | | ||
xargs apt-get -d source | ||
|
||
cd .. | ||
tar zcf "$BUNDLE_FILE" bundled-source |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
#!/bin/sh | ||
set -e | ||
[ "$1" ] | ||
|
||
VERSION="$1" | ||
|
||
if [ $(id -u) -eq 0 ] | ||
then | ||
DIR=/opt/lmms-$VERSION | ||
PREFIX=/usr | ||
umask 022 | ||
chmod -R +rX * | ||
else | ||
DIR="$HOME"/.lmms-$VERSION | ||
PREFIX="$HOME"/.local | ||
fi | ||
echo Installing to $DIR | ||
mkdir -p "$DIR" | ||
|
||
rm -fr "$DIR"/bin "$DIR"/etc "$DIR"/lib "$DIR"/usr | ||
mv bin etc lib usr "$DIR" | ||
|
||
sed -e "/^Exec=/ s#lmms#\"$DIR\"/bin/lmms-launcher#" -i lmms-$VERSION.desktop | ||
|
||
ICONDIR="$PREFIX"/share/icons | ||
mkdir -p "$ICONDIR" | ||
mv lmms-$VERSION.png "$ICONDIR" | ||
|
||
MENUDIR="$PREFIX"/share/applications | ||
mkdir -p "$MENUDIR" | ||
mv lmms-$VERSION.desktop "$MENUDIR" | ||
if [ "$(which update-desktop-database)" ] | ||
then | ||
update-desktop-database "$MENUDIR" | ||
fi | ||
|
||
MIMEDIR="$PREFIX"/share/mime/packages | ||
if [ ! \( -e "$MIMEDIR"/lmms.xml -o -e /usr/share/mime/packages/lmms.xml -o \ | ||
-e /usr/local/share/mime/packages/lmms.xml \) ] | ||
then | ||
mkdir -p "$MIMEDIR" | ||
mv lmms.xml "$MIMEDIR" | ||
if [ "$(which update-mime-database)" ] | ||
then | ||
update-mime-database "$PREFIX"/share/mime | ||
fi | ||
fi |