Skip to content
This repository has been archived by the owner on Jun 14, 2018. It is now read-only.

Commit

Permalink
Lets AppImage this!
Browse files Browse the repository at this point in the history
Signed-off-by: Roeland Jago Douma <[email protected]>
  • Loading branch information
rullzer committed May 28, 2017
1 parent 30dcfc4 commit c9bf00c
Show file tree
Hide file tree
Showing 2 changed files with 106 additions and 0 deletions.
13 changes: 13 additions & 0 deletions linux/AppImage/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
FROM ubuntu:trusty

MAINTAINER Roeland Jago Douma <[email protected]>

RUN apt-get update

RUN apt-get install -y wget libsqlite3-dev libssl-dev cmake git software-properties-common build-essential mesa-common-dev fuse

RUN add-apt-repository -y ppa:beineri/opt-qt562-trusty

RUN apt-get update

RUN apt-get install -y qt56base qt56tools
93 changes: 93 additions & 0 deletions linux/AppImage/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
#/bin/bash

#Get Qt-5.6.2
source /opt/qt56/bin/qt56-env.sh

#QtKeyChain
cd
git clone https://github.com/frankosterfeld/qtkeychain.git
cd qtkeychain
git checkout v0.8.0
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=/app ../
make
make install

#Build client
cd
mkdir build-client
cd build-client
cmake -D CMAKE_INSTALL_PREFIX=/app \
-D NO_SHIBBOLETH=1 \
-D OEM_THEME_DIR=/home/client/nextcloudtheme \
-DMIRALL_VERSION_SUFFIX=beta \
-DMIRALL_VERSION_BUILD=13 \
/home/client/client
make
make install

#Set info
ARCH=$(arch)
APP=Nextcloud
LOWERAPP=${APP,,}
VERSION=2.3.2-beta

#Create skeleton
mkdir -p $HOME/$APP/$APP.AppDir/usr/
cd $HOME/$APP/

#Fetch appimage functions
wget -q https://github.com/probonopd/AppImages/raw/master/functions.sh -O ./functions.sh
. ./functions.sh

cd $APP.AppDir

#clean binary
sed -i -e 's|/app|././|g' /app/bin/nextcloud

# Copy installed stuff
cp -r /app/* ./usr/

get_apprun

cp /app/share/applications/nextcloud.desktop .
cp /app/share/icons/hicolor/256x256/apps/Nextcloud.png nextcloud.png

#Copy qt plugins
mkdir -p ./usr/lib/qt5/plugis
cp -r /opt/qt56/plugins ./usr/lib/qt5/plugins

#Copy dependencies
copy_deps

delete_blacklisted

# We don't bundle the developer stuff
rm -rf usr/include || true
rm -rf usr/lib/cmake || true
rm -rf usr/lib/pkgconfig || true
find . -name '*.la' | xargs -i rm {}
strip usr/bin/* usr/lib/* || true
rm -rf app/ || true
# Copy, since libssl must be in sync with libcrypto
cp /lib/x86_64-linux-gnu/libssl.so.1.0.0 usr/lib/


#Move qt5.6 libs to the right location
mv ./opt/qt56/lib/* ./usr/lib/x86_64-linux-gnu/
rm -rf ./opt/

#Move sync exlucde to right location
mv ./usr/etc/Nextcloud/sync-exclude.lst ./usr/bin/

#desktop intergration
get_desktopintegration $LOWERAPP

#Generate the appimage
cd ..
mkdir -p ../out/
generate_type2_appimage

#move appimag
mv ../out/ /home/client/

0 comments on commit c9bf00c

Please sign in to comment.