Discussion:
T10112: KDEInstallDirs on Mac
René J.V. Bertin
2018-11-23 13:38:02 UTC
Permalink
rjvbb added a comment.
Can we set DATAROOTDIR=/Library/Application Support/KDE so that everything remains nicely bundled?
Sadly not without patching any code, apparently.

We'll also need something like this I think:

_define_relative(DATADIR DATAROOTDIR ""
"read-only architecture-independent data"
DATA_INSTALL_DIR)
if(APPLE AND NOT APPLE_FORCE_INSTALL_PREFIX)
_define_non_cache(DATADIR_KF5 "/Library/Application Support/kf5")
else()
_define_non_cache(DATADIR_KF5 "${CMAKE_INSTALL_DATADIR}/kf5")
endif()
if(NOT KDE_INSTALL_DIRS_NO_DEPRECATED)
set(KF5_DATA_INSTALL_DIR "${CMAKE_INSTALL_DATADIR_KF5}")
endif()

TASK DETAIL
https://phabricator.kde.org/T10112

To: rjvbb
Cc: kde-mac, #kde_applications, #frameworks, #build_system
Yurii Kolesnykov
2018-11-25 11:32:27 UTC
Permalink
yurikoles added a comment.


/Library/Application Support/kf5

This will be incompatible with homebrew packages <https://github.com/KDE-mac/homebrew-kde>, since they are built inside sandbox and own prefix.

I had created a shell script <https://github.com/KDE-mac/homebrew-kde/blob/master/tools/all-fixes.sh> that sets up needed symlinks, it needs to be run manually.

I think If this patch will be accepted, we will end up with install errors due to sandbox limitation, or my script will require a sudo, because `/Library/Application Support/` is not writable by arbitrary users.

TASK DETAIL
https://phabricator.kde.org/T10112

To: rjvbb, yurikoles
Cc: yurikoles, kde-mac, #kde_applications, #frameworks, #build_system
René J.V. Bertin
2018-11-25 11:42:04 UTC
Permalink
rjvbb added a comment.


You will notice that I plan to maintain an option to disable the Apple-specific behaviour for anyone who depends on the current behaviour (that includes me, but your script would also continue to work). Cf. the `APPLE_FORCE_X11` option

A priori /Library/Application Support is admin-writable and I cannot really conceive that anyone using (managing) a MacPorts, Fink or HomeBrew installtion would NOT have an admin account. But then I've been tweaking permissions since 10.2 and have only some outdated experience with Fink besides my intimate knowledge of MacPorts (and those both require root permissions to install packages).

TASK DETAIL
https://phabricator.kde.org/T10112

To: rjvbb
Cc: yurikoles, kde-mac, #kde_applications, #frameworks, #build_system
René J.V. Bertin
2018-11-26 22:36:23 UTC
Permalink
rjvbb added a comment.


A more complete draft:
F6442989: patch-mac-installdirs.diff <https://phabricator.kde.org/F6442989>

TASK DETAIL
https://phabricator.kde.org/T10112

To: rjvbb
Cc: yurikoles, kde-mac, #kde_applications, #frameworks, #build_system
Loading...