Skip to content

Commit 9105b4e

Browse files
committed
[DDW-1213] Add libsystemd--device-monitor.patch
1 parent b319759 commit 9105b4e

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
diff --git a/src/libsystemd/sd-device/device-monitor.c b/src/libsystemd/sd-device/device-monitor.c
2+
index fd5900704d..f9106fdbe5 100644
3+
--- a/src/libsystemd/sd-device/device-monitor.c
4+
+++ b/src/libsystemd/sd-device/device-monitor.c
5+
@@ -445,9 +445,9 @@ int device_monitor_receive_device(sd_device_monitor *m, sd_device **ret) {
6+
"sd-device-monitor: No sender credentials received, message ignored.");
7+
8+
cred = (struct ucred*) CMSG_DATA(cmsg);
9+
- if (cred->uid != 0)
10+
- return log_debug_errno(SYNTHETIC_ERRNO(EAGAIN),
11+
- "sd-device-monitor: Sender uid="UID_FMT", message ignored.", cred->uid);
12+
+ //if (cred->uid != 0)
13+
+ // return log_debug_errno(SYNTHETIC_ERRNO(EAGAIN),
14+
+ // "sd-device-monitor: Sender uid="UID_FMT", message ignored.", cred->uid);
15+
16+
if (streq(buf.raw, "libudev")) {
17+
/* udev message needs proper version magic */

nix/old-default.nix

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,19 @@ let
88
system = {
99
x86_64-windows = "x86_64-linux"; # Windows can only be cross-built from Linux now
1010
}.${target} or target;
11-
pkgs = inputs.nixpkgs.legacyPackages.${system};
11+
pkgs =
12+
if target != "x86_64-linux"
13+
then inputs.nixpkgs.legacyPackages.${system}
14+
else import inputs.nixpkgs {
15+
inherit system;
16+
config.packageOverrides = super: {
17+
# XXX: non-root users need to be able to use sd-device/device-monitor.c to detect Ledger:
18+
# FIXME: find the correct (minimal) place to override this:
19+
systemd = super.systemd.overrideAttrs (oldAttrs: {
20+
patches = oldAttrs.patches ++ [./libsystemd--device-monitor.patch];
21+
});
22+
};
23+
};
1224
walletFlake = (import inputs.flake-compat {
1325
# FIXME: add patches in `flake.nix` after <https://github.com/NixOS/nix/issues/3920>
1426
src = pkgs.runCommand "cardano-wallet" {} ''

0 commit comments

Comments
 (0)