Ref T10197
Details
- Reviewers
vonreth - Maniphest Tasks
- T10197: Add dbus package to umbrello binaries
- Commits
- R877:b94908c26ded: Add dbus to umbrello
Diff Detail
- Repository
- R877 Craft Blueprints for KDE
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
I'm not sure why Umbrello has a hard dependency on D-Bus (considering it's foreign to Windows and macOS).
In any case, Hannah is the right person to be reviewing changes to Craft, not me.
qt has already a dependency to dbus so its implicit.
You probably won't need qdbus though.
That means it is only required to exclude the related executables in the blacklist file ?
The dbus config files provided by the dbus package in etc/dbus1 and share/dbus-1, which are required to run the daemon.
Looking in blacklist.txt there is
etc/.* share/.*
which seems to exclude them as far as I understand the file syntax.
How can I specify this ?
You probably won't need qdbus though.
In the recent packages it is included, see for example https://download.kde.org/stable/umbrello/2.26.2/win64/umbrello-x86_64-w64-mingw32-2.26.2-76.2-bin.7z
If I start umbrello on linux it registers itself in dbus as many other KDE applications. It will do the same on Windows.
There is very little point to it though, as every application gets it's own D-Bus instance so they can't talk to each other.
But it can be remote controlled from clients in the same installation path.
Sharing a dbus instance by several applications on Windows is possible with some manual config and environment adjustments. To have such support out of the box some design work is required and depends on an independent dbus installer or portable package.
An additional reason is that KDE libraries internal starts kdeinit for session startup, which starts dbus, kded and klauncher for io processing and so on
For compatibility with KDE and Qt on Windows we patched dbus to use bin/data instead of share, on Windows.
And yes your blacklist ignores everything from etc
Thanks for this pointer.
For compatibility with KDE and Qt on Windows we patched dbus to use bin/data instead of share, on Windows.
Which is an additional QT5/KF5 cross platform burden :-(
For cross compiled QT5/KF5 packages on OBS (https://build.opensuse.org/) I did the exact opposite - I patched Qt and ECM also to support unix file layout on Windows (see https://build.opensuse.org/package/view_file/home:rhabacker:branches:windows:mingw:win32:KF547/mingw32-extra-cmake-modules/0001-Add-support-for-using-share-as-data-root-on-windows-by.txt?expand=1 and https://build.opensuse.org/package/view_file/windows:mingw:win32/mingw32-libqt5-qtbase/0001-Use-unix-path-layout-on-Windows-too-to-match-Framework.patch?expand=1)
Maybe https://github.com/KDE/craft-blueprints-kde/blob/master/libs/qt5/qtbase/0001-Allow-additional-QStandardPaths-data-directories-on-.patch could help you which is supposed to be upstreamed soon.
This is the patch we had to apply to dbus, basically to use cmake paths instead of hardcoded paths
I assume with this statement you are refering to the patch located at https://cgit.kde.org/craft-blueprints-kde.git/tree/libs/dbus/dbus-fix_data_dir.diff ?
Looking at the patch there is a minor issue related to https://gitlab.freedesktop.org/dbus/dbus/blob/master/bus/session.conf.in#L39, which could be fixed by specifing CMAKE_INSTALL_FULL_SYSCONFDIR (see https://gitlab.freedesktop.org/dbus/dbus/blob/master/cmake/CMakeLists.txt#L82 for details)
You may open a dbus merge request for this patch to get into dbus-1.13
kde/kdesdk/umbrello/blacklist.txt | ||
---|---|---|
51 | Recent binaries does not include umbrello executable, which seems to be excluded by a bug in the above mentioned change. Where can I find a documentation of the blacklist.txt file format ? |
I'm sorry there is no real documentation but it's just plain regex. And as I mentioned pls push to 2018.12