Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/client_theming.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2017-11-15 17:01:20 +0300
committerGitHub <noreply@github.com>2017-11-15 17:01:20 +0300
commitab40efe1e1475efddd636c09251d8917627261da (patch)
tree70c62bf9bba8c1da4e82c67de1c3e5b57b356f2b
parente9b3656a689a642f0fee9774e7edf9cec5a0f38f (diff)
parente4b13264aa8c72177ca954e4537d182c3a89b668 (diff)
Merge pull request #211 from nextcloud/fix-mac
Fix mac build instructions
-rw-r--r--README.md15
-rw-r--r--osx/build.sh26
2 files changed, 22 insertions, 19 deletions
diff --git a/README.md b/README.md
index 8feb78f..c9e6b71 100644
--- a/README.md
+++ b/README.md
@@ -142,7 +142,7 @@ sudo make install
3. `wget https://github.com/sparkle-project/Sparkle/releases/download/1.14.0/Sparkle-1.14.0.tar.bz2`
4. `tar -xf Sparkle-1.14.0.tar.bz2`
5. `mv Sparkle.framework ~/Library/Frameworks/`
-6. Install XCode 6.4 from http://adcdownload.apple.com/Developer_Tools/Xcode_6.4/Xcode_6.4.dmg
+6. Install XCode 7.2.1
7. sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
8. Generate Sparkle keys: `./bin/generate_keys`. Keep those, if you loose it you won't be able to deploy updates anymore.
9. Store the keys in `osx/`. Make sure to not make the `dsa_priv.pem` publicly available.
@@ -150,16 +150,15 @@ sudo make install
### Compile Qt
-Because the desktop client comes with some custom patches you have to download the Qt 5.6.2 source and then apply all of them. Make sure to adjust <client> with the login to the cloned client repository.
+Download and compile Qt 5.9.2 source. Unfortunately the Qt patches don't apply anymore,
+so we just ignore them for the time being.
```bash
cd /tmp/
-wget http://download.qt.io/official_releases/qt/5.6/5.6.2/single/qt-everywhere-opensource-src-5.6.2.tar.gz
-tar -xf qt-everywhere-opensource-src-5.6.2.tar.gz
-cd /tmp/qt-everywhere-opensource-src-5.6.2/qtbase
-git apply <client>/admin/qt/patches/qtbase/*.patch
-cd ..
-./configure -sdk macosx10.9 -openssl -openssl-linked
+wget http://download.qt.io/official_releases/qt/5.9/5.9.2/single/qt-everywhere-opensource-src-5.9.2.tar.xz
+tar -xjf qt-everywhere-opensource-src-5.9.2.tar.xz
+cd /tmp/qt-everywhere-opensource-src-5.9.2
+./configure -sdk macosx10.11 -openssl -openssl-linked -I /usr/local/opt/openssl/include/ -L /usr/local/opt/openssl/lib/ -nomake examples
make -j2
sudo make -j1 install
```
diff --git a/osx/build.sh b/osx/build.sh
index 4e3c6a1..f7f2102 100644
--- a/osx/build.sh
+++ b/osx/build.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-export PATH=/usr/local/Qt-5.6.2/bin/:$PATH
+export PATH=/usr/local/Qt-5.9.2/bin/:$PATH
export OPENSSL_ROOT_DIR=$(brew --prefix openssl)
# Cleanup
@@ -9,16 +9,18 @@ sudo rm -rf client
sudo rm -rf install
# Clone the desktop client code
-cd ~
git clone --recursive https://github.com/owncloud/client.git
cd client
-git checkout v2.3.2
+git checkout v2.3.3
git submodule update --recursive
# Build qtkeychain
-cd ~/client/src/3rdparty/qtkeychain
-cmake -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.8 -DCMAKE_INSTALL_PREFIX=/Users/builder/install -DCMAKE_PREFIX_PATH=/Users/builder/Qt/5.6/clang_64 .
-sudo make install
+cd ~/client/src/3rdparty/
+git clone https://github.com/frankosterfeld/qtkeychain.git
+cd qtkeychain
+git checkout v0.8.0
+cmake -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DCMAKE_INSTALL_PREFIX=/Users/builder/install -DCMAKE_PREFIX_PATH=/Users/builder/Qt/5.9/clang_64 .
+sudo make -j1 install
# Build the client
cd ~
@@ -26,11 +28,13 @@ cp client_theming/osx/dsa_pub.pem client/admin/osx/sparkle/
rm -rf build-mac
mkdir build-mac
cd build-mac
-cmake -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.8 -DCMAKE_INSTALL_PREFIX=/Users/builder/install -DCMAKE_PREFIX_PATH=/Users/builder/Qt/5.6/clang_64 -D SPARKLE_INCLUDE_DIR=/Users/builder/Library/Frameworks/Sparkle.framework/ -D SPARKLE_LIBRARY=/Users/builder/Library/Frameworks/Sparkle.framework/ -D OEM_THEME_DIR=/Users/builder/client_theming/nextcloudtheme -DWITH_CRASHREPORTER=ON -DNO_SHIBBOLETH=1 -DMIRALL_VERSION_SUFFIX=beta -DMIRALL_VERSION_BUILD=1 ../client
-make
-sudo make install
-sudo ~/client_theming/client/admin/osx/sign_app.sh ~/install/nextcloud.app 59FA8948AEBAE3F2222AE9BC020D6DA31DF821A7
-sudo ./admin/osx/create_mac.sh ../install/ . 6A588D031B2B63991A49DB9C98B4C846D6D0EAC4
+cmake -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DCMAKE_INSTALL_PREFIX=/Users/builder/install -DCMAKE_PREFIX_PATH=/Users/builder/Qt/5.9/clang_64 -D SPARKLE_INCLUDE_DIR=/Users/builder/Library/Frameworks/Sparkle.framework/ -D SPARKLE_LIBRARY=/Users/builder/Library/Frameworks/Sparkle.framework/ -D OEM_THEME_DIR=/Users/builder/client_theming/nextcloudtheme -DWITH_CRASHREPORTER=ON -DNO_SHIBBOLETH=1 -DMIRALL_VERSION_BUILD=1 ../client
+make -j2
+sudo make -j1 install
+# The magic string here is SHA1 hash of your Developer ID Application certificate
+sudo ~/client/admin/osx/sign_app.sh ~/install/nextcloud.app 74FB2413760D6407588B69F499F13514A86AE
+# The magic string here is SHA1 hash of your Developer ID Installer certificate
+sudo ~/build-mac/admin/osx/create_mac.sh ../install/ . 1B8B3FD4A0ADCC5BF4385FA1A50F4547DE73C95E
# Generate a sparkle signature for the tbz
openssl dgst -sha1 -binary < ~/install/*.tbz | openssl dgst -dss1 -sign ~/dsa_priv.pem | openssl enc -base64 > ~/sig.txt