Bug 363613 - emerge --package does not remove hard links to build path from executables
Summary: emerge --package does not remove hard links to build path from executables
Status: VERIFIED REMIND
Alias: None
Product: kde-windows
Classification: Miscellaneous
Component: installer (show other bugs)
Version: unspecified
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: KDE-Windows
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-27 22:57 UTC by Jasem Mutlaq
Modified: 2016-11-18 20:26 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jasem Mutlaq 2016-05-27 22:57:16 UTC
My KDEROOT is D:\k and under it I ran emerge --package kstars, It created an installer which I then installed on a fresh Win10 VM. The application runs but when I tried using "Get Hot New Stuff" AKA KNewStuff, it "failed to load providers". Since this feature requires that kdeinit5.exe is invoked which then executes dbus-daemon.exe and klauncher.exe for this to work, it only started dbus-daemon.exe

But it seems all executable files already point to the build location in the primary machine (i.e. D:\k). When I launched klauncher.exe manually, I got this message inside the fresh VM:

"path of the process "dbus-daemon" seems to be outside of the installPath: "C:/Program Files/KStars Desktop Planetarium/bin" "D:/k"
QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave.

Furthermore, I started dbus-monitor.exe and got this:

signal time=1464388944.096486 sender=org.freedesktop.DBus -> destination=:1.5 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.5"
signal time=1464388944.111972 sender=org.freedesktop.DBus -> destination=:1.5 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.5"
method call time=1464388955.643587 sender=:1.0 -> destination=org.freedesktop.DBus serial=22 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameHasOwner
   string "org.kde.klauncher5"
method return time=1464388955.658837 sender=org.freedesktop.DBus -> destination=:1.0 serial=11 reply_serial=22
   boolean true
method call time=1464388955.658837 sender=:1.0 -> destination=org.kde.klauncher5 serial=23 path=/KLauncher; interface=org.kde.KSlaveLauncher; member=requestSlave
   string "http"
   string "edu.kde.org"
   string "tcp://127.0.0.1:50230"
method return time=1464388955.688128 sender=:1.2 -> destination=:1.0 serial=9 reply_serial=23
   int32 0
   string "Error loading 'D:/k/bin/kioslave'.

So it is clear that the emerge --package does not create an independent package from the build location at this point which is leading to these errors.

Reproducible: Always

Steps to Reproduce:
1. Use emerge --package to create a package
2. Install on a fresh VM
3. Use any feature that requires klauncher, dbus, or kinit like KNewStuff


Actual Results:  
KNewStuff fails "failed to load providers"

Expected Results:  
KNewStuff works along with dbus calls..etc
Comment 1 Hannah von Reth 2016-11-18 20:26:13 UTC
Looks like all dbus services are affected.
I think they should not use an absolute path on windows at all.
Maybe we could add something in ecm for that?