dbus: several fixes
- disable the tests as (they warn) they make the library insecure - add libX11 (was missing something) - dirty hack around the "incomplete struct ucred" problem (feel free to find a better solution, I tried almost 1h)
This commit is contained in:
parent
3836ef7d66
commit
907602d5b8
@ -8,9 +8,12 @@ let
|
|||||||
sha256 = "fc1370ef38abeeb13f55c905ec002e60705fb0bfde3b8d21c8d6eb8056c11bac";
|
sha256 = "fc1370ef38abeeb13f55c905ec002e60705fb0bfde3b8d21c8d6eb8056c11bac";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./ignore-missing-includedirs.patch ./implement-getgrouplist.patch ];
|
patches = [
|
||||||
|
./ignore-missing-includedirs.patch ./implement-getgrouplist.patch
|
||||||
|
./ucred-dirty-hack.patch
|
||||||
|
];
|
||||||
|
|
||||||
configureFlags = "--enable-embedded-tests --localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp";
|
configureFlags = "--localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp";
|
||||||
|
|
||||||
in rec {
|
in rec {
|
||||||
|
|
||||||
@ -19,7 +22,7 @@ in rec {
|
|||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
|
||||||
buildInputs = [ expat ];
|
buildInputs = [ expat libX11 ];
|
||||||
|
|
||||||
# FIXME: dbus has optional systemd integration when checking
|
# FIXME: dbus has optional systemd integration when checking
|
||||||
# at_console policies. How to enable this without introducing a
|
# at_console policies. How to enable this without introducing a
|
||||||
|
18
pkgs/development/libraries/dbus/ucred-dirty-hack.patch
Normal file
18
pkgs/development/libraries/dbus/ucred-dirty-hack.patch
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c
|
||||||
|
index b4ecc96..267984a 100644
|
||||||
|
--- a/dbus/dbus-sysdeps-unix.c
|
||||||
|
+++ b/dbus/dbus-sysdeps-unix.c
|
||||||
|
@@ -1635,6 +1635,13 @@ write_credentials_byte (int server_fd,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+struct ucred
|
||||||
|
+{
|
||||||
|
+ pid_t pid; /* PID of sending process. */
|
||||||
|
+ uid_t uid; /* UID of sending process. */
|
||||||
|
+ gid_t gid; /* GID of sending process. */
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* Reads a single byte which must be nul (an error occurs otherwise),
|
||||||
|
* and reads unix credentials if available. Clears the credentials
|
Loading…
x
Reference in New Issue
Block a user