Commit graph

202 commits

Author SHA1 Message Date
Claudio Cambra
7a74f68eb9 Always configure craft if first download and set to not reconfigure by default in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
6f1f0ba562 Use --options as recommended for configuring craft build in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
78b41e09a0 Make craft blueprint name adjustable in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
3ff8f83148 Add support for fetching and including Sparkle in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
f41d6e4788 Remove unused Build file in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
922748755f Extract app bundle codesigning procedure to separate file in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
a4fbf97f36 Directly sign plugins and frameworks within app bundle in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
11ebcca277 Add relevant files to mac crafter gitignore
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
503bd966f8 Add option to skip craft configuration in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
b0e167a4d0 Divide client app dir path construction in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
c47435150b Fix unused codesignidentity warning in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
495c85905e Throw if codesign binary not found in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
cec60201fb Fix buildtype argument for craft in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
a9196609b0 Add procedure to codesign app bundle in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
a73877cece Allow explicitly skipping code-signing of dependencies in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
9f88eb0376 Allow setting of build type in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
6c82430553 Remove previous craft client builder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
fb582c4394 Fix paths in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
902a551e61 Fix mac-crafter abstract
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
11eb2bd714 Adjust arguments for mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
0a699d6c3f Fix dependencies for mac-crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
42c68082ab Make URLs adjustable in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
375020fa79 Make build path adjustable in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
4e37ec8b4c Move library check to separate file in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
82c46b7539 Codesign all crafted plugins in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
1dbde98598 Codesign all the crafted libraries with mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
1ec7d0bb87 Make codesigning throw in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
41b62e2677 Make installIfMissing throwing in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
fc9c5650e0 Implement basic argumentparser in mac crafter
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
1bc7054fab Move functions of mac crafter into different files
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
01eba19d8d Add copyright header to main.swift
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
7b439967d3 Move build script into dedicated package
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
f45c30d3ff Add codesign function to macos builder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
d15dd26bda Craft the desktop client in the mac builder script
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
156b082594 Clone craft master to craftdir in mac builder script
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
84cc6f8ada Clone craft in mac builder script
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
1942bcf8d8 Deduplicate installation of required tools in macos builder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
283c1c3ba0 Set up python if missing in mac builder script
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
dd496bfcc7 Configure xcode command line tools if missing in mac builder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
eb7929ace6 Install inkscape via mac builder script if not present
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
705cb09d8d Install brew through builder if not present
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
9e198a4546 Add convenience func to check if command exists
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
f961db3e05 Add convenience func to run shell command
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
e6d0f80465 Start working on mac builder script
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-08 15:41:45 +08:00
Claudio Cambra
9eb8645b95 Do not open client on install as this breaks MDM deployments
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-05-15 14:28:49 +02:00
Claudio Cambra
fe7c00a7bf Fix macOS-specific CMake things with Qt6
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
aa76de9b68 allow detection of qt5 or qt6
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Claudio Cambra
4660c6ebae Open Nextcloud after installation on macOS
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-19 15:46:46 +08:00
Dimitri Papadopoulos
9d830e94f9 Fix typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-06-21 08:47:13 +02:00
Christian Göttsche
1a83894074 Fix typo
Found by Lintian.

Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
2022-12-13 09:22:58 +01:00
Claudio Cambra
c9d592968c Make the make_universal.py script more verbose, make it easier to understand what is happening
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-05-11 14:33:54 +02:00
Felix Weilbach
ad814f175e Let the macOS installer know that the application can run on Arm64
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-11-12 01:42:37 +01:00
Felix Weilbach
6d5597e93e Add a script to create a universal app package
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-11-10 13:57:47 +00:00
Felix Weilbach
332a48e6a1 Update to Qt 5.15
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-08-19 14:01:46 +02:00
znerol
547c1f57d9 Fix macOS app bundle name in packaging scripts
Signed-off-by: znerol <lo+github@znerol.ch>
2021-08-18 09:43:50 +02:00
Felix Weilbach
7850551cad Start macOS app bundle name with uppercase letter
It's a convention on macOS that app bundle names start with an uppercase
letter. Also this aligns the app name with Windows and Linux.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-15 12:19:55 +00:00
Felix Weilbach
e7c65a71b8 Remove conditional logic for OEM.cmake
This file is not used in Brander and in the desktop client and just
confused people.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-14 10:14:28 +00:00
Dominik Schmidt
a985ea8624
Do not select ownCloud in Finder after installation to fix #6781 2020-12-15 10:58:11 +01:00
Camila San
9c5a51bb07 Entitlement to sign the QtWebEngineProcess with an exception.
Fix for #1793: The problem seems to be related enabling hardened runtime.
This exception allows the webview to load.

Signed-off-by: Camila San <hello@camila.codes>
2020-09-18 04:35:06 +00:00
Michael Schuster
acb56be528 macOS: Use macdeployqt instead of the old admin/osx/macdeployqt.py
In order to build the new 2.7 releases (new QML dependencies) without manually
modifying the old Python script each time, rely on Qt's standard tool instead.

This should streamline the build systems for upcoming dependency changes.

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-06-07 14:39:42 +02:00
Kevin Ottens
3867e73fd5 Stop supporting Qt older than 5.12
This both removes older Qt from the CI and also adjust all the
find_package calls in CMakeLists.txt

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-14 21:15:45 +02:00
cclauss
b34ed01109 Use print() function in both Python 2 and Python 3
Signed-off-by: cclauss <cclauss@me.com>
2020-03-05 11:35:30 +01:00
Michael Schuster
3b5966bba0
Add timestamp to Mac installer code signing
Use the --timestamp option for 'productsign' to add a secure timestamp.

See: https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution/resolving_common_notarization_issues

Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-17 17:50:52 +01:00
Michael Schuster
097b923871 Add new "styles" plugin to macOS deployment script for Qt 5.12.5
Qt 5.12 needs this library to use the correct style for Light / Dark Mode:

  styles/libqmacstyle.dylib

The interface looks like from the 1990's without this library ;-)

Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-10-15 23:32:04 +00:00
Roeland Jago Douma
6ada87ed15
Update isntaller background for OSX
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-06 10:39:10 +01:00
Roeland Jago Douma
30b211381f
More fixes for the OSX daily builds
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-21 15:22:53 +02:00
Roeland Jago Douma
cbf3725814
Fix macdeployqt
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-20 13:05:41 +02:00
Roeland Jago Douma
8b96ef53b9
Add our own dsa_pub.pem
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-14 20:59:27 +02:00
Markus Goetz
16bf765818
macOS: Don't hardcode path in Installer source 2018-06-05 13:29:51 +02:00
Markus Goetz
5667408c58
macOS: Offer only standard installation in installer 2018-06-05 13:29:51 +02:00
Markus Goetz
a0e17ce221
create_mac.sh: Also name properly in source dir 2018-06-05 13:29:51 +02:00
Markus Goetz
3defc30e12
macosx.pkgproj; This is a .cmake preprocessed file 2018-06-05 13:29:51 +02:00
Markus Goetz
0d182280c4
macdeployqt: Adjust minimum version based on our Qt #5932 2018-06-04 20:02:43 +02:00
Roeland Jago Douma
8477c5a565
Merge pull request #327 from nextcloud/upstream/pr/6271
postinstall macOS: check if Finder is running
2018-06-04 20:00:58 +02:00
Joss Brown
df8708dd46
postinstall macOS: check if Finder is running
Some users have disabled Finder, and the postinstall will always reenable Finder, unless it checks Finder status first.
2018-05-17 21:14:57 +02:00
Markus Goetz
b22daf8691
macOS: Put Qt version in .pkg name 2018-05-16 20:08:25 +02:00
Roeland Jago Douma
5dc73ffd8b
OWNCLOUD.cmake => NEXTCLOUD.cmake
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-20 14:12:52 +01:00
Jocelyn Turcotte
3b20684dc7 shell/macos: Remove legacy (< 10.10) overlay icons
Having to update the plugins to add a submenu in the context menu,
it's more cost-effective to remove support for legacy macOS versions
than implementing and testing this setup.
2017-07-07 10:49:51 +02:00
Jocelyn Turcotte
d0d5b2b4ee Don't try to deploy the mng image format plugin on macOS
Qt now only build it if the system library is available since libmng
isn't active enough to make its security reliable enough. We don't
use that image format ourselves anyway.
2016-12-07 15:26:23 +01:00
Christian Kamm
db24f60ae3 License: Adjust license of GPLv2 source files to GPLv2+
See #5180
2016-10-25 11:06:54 +02:00
Markus Goetz
6a9655aab6 OS X: Fix overlay installation on El Capitan #4650
The sleep is somehow needed, probably for pkg to rebuild its DB?
The case fix fixes a warning but did not fix the issue itself.
2016-04-15 16:58:58 +02:00
Markus Goetz
d1649ce4df OS X: Allow ampersand in APPLICATION_NAME #4657 2016-04-15 11:30:49 +02:00
Jocelyn Turcotte
e4ae279f7b Fix the crash reporter not launching
The proper path needs to be returned from CopyFramework
in order for install_name_tool to be run on the destination.
2016-02-02 10:43:52 +01:00
Jocelyn Turcotte
46e384a2f2 OS X: The --strict option isn't supported on the build machine
XCode is too old.
2016-01-22 18:13:25 +01:00
Jocelyn Turcotte
5092243080 OS X: Fix macdeployqt not to embed symlinks when ran multiple times
ln has a special syntax to create the symlink inside the last path if it's
a directory (or a symlink to a directory).

Also pass --strict to codesign --verify to catch this kind of error.
2016-01-22 18:04:46 +01:00
Jocelyn Turcotte
110f3710be OS X: Make sure Qt frameworks have the right structure
This fixes the codesign verification by making sure that the Qt
framework bundles follow the required structure described at:
https://developer.apple.com/library/ios/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html
2016-01-22 16:58:41 +01:00
Jocelyn Turcotte
6096a836a4 Do a codesign --verify before running spctl
codesign is less strict than spctl and gives more output.
codesign -d alone doesn't verify but only prints.
2016-01-22 16:54:04 +01:00
Jocelyn Turcotte
c3724068e5 Fix gen_sym_files.py trying to process non-macho files
Since it processes all files under PlugIns uncondisionally, it would
now try to process the Info.plist file in the FinderSyncExt bundle.
2016-01-22 16:48:53 +01:00
Markus Goetz
0f658e5ca9 OS X: Don't install legacy Finder plugin on >= 10.10 #3587 (v2) 2016-01-08 17:54:10 +01:00
Markus Goetz
93e8bbab10 OS X: Don't install legacy Finder plugin on >= 10.10 #3587 2016-01-05 17:43:48 +01:00
Daniel Molkentin
0ef9bd9e23 Remove bearer plugins
Causes regressions due to constant Wifi scanning
2016-01-04 11:54:11 +01:00
Markus Goetz
1a1541ecd6 macdeployqt: Forgot comma 2015-11-06 15:18:14 +01:00
Markus Goetz
6901fc9e38 macdeployqt: Also copy bearer plugins
See #3449
2015-11-05 18:15:45 +01:00
Markus Goetz
0070835330 macdeployqt: Hack to make Qt 5.5 work 2015-11-05 17:19:49 +01:00
Klaas Freitag
57f10c0c8e Use application SHORT name for the name of the MacOSX pkg file.
THis is because of https://github.com/owncloud/ownbrander/issues/445
2015-09-24 16:02:08 +02:00
Markus Goetz
cad33de824 OS X: Try harder to enable 10.10 plugin #3463 2015-08-05 15:10:00 +02:00
Markus Goetz
1e72ea45dd OS X: Fix enabling overlays for branded clients #3463 2015-07-31 15:13:14 +02:00
Jocelyn Turcotte
ed51358478 shell_i: Activate the finder integration on install #3463
This makes sure that users won't have to go into settings
to activate the extension. This might upset users by forcing
them to re-disable it on each oC upgrade, but if this becomes
an issue we should then make this configurable in the client's
settings itself.
2015-07-28 17:58:17 +02:00
Markus Goetz
a8fb94f51b OS X Installer: Select app in Finder after install
This is to improve UX in #2410
2015-07-13 10:52:48 +02:00
Jocelyn Turcotte
18efc5eb65 shell_i: Add a way to fail the build if the signing key doesn't match
This tries to catch error at build time instead of having
to check the OS X console for errors afterward.
2015-06-22 13:55:19 +02:00