Files
nixpkgs/pkgs/servers/samba/4.x-fix-systemd-detection.patch
Tom Fitzhenry 25d772c2f3 samba: 4.22.7 -> 4.23.5
Patch 'build-find-pre-built-heimdal-build-tools-in-case-of-.patch' no longer applied. I found that LibreELEC maintainers had posted on https://bugzilla.samba.org/show_bug.cgi?id=14164, and that they had an updated patch, so let's just fetch that.

Why do we need `--with-systemd`? Samba 4.23 has a build script regression that no longer auto-detects systemd libraries. I intend to raise this with Samba's bugzilla, but in short:

* Samba 4.23 upgraded its bundled waf from 2.0.26 (used in 4.22.x) to 2.1.6.
* waf 2.1.6 switched the CLI option parser from `optparse` to `argparse`, in which case the default boolean was previously `None`, but is now `False`.
* In `lib/util/wscript`, the systemd options are registered like `opt.add_option('--with-systemd',    action='store_true',  dest='enable_systemd')`.
* In `lib/util/wscript_configure`, the libsystemd checks are guarded by `options.enable_sytemd != False`, and thus is no longer true when unspecified.
2026-04-17 23:08:19 +00:00

35 lines
1.2 KiB
Diff

From 450a6183586243d907843c7d89973452b59d8b10 Mon Sep 17 00:00:00 2001
From: Tom Fitzhenry <tom@tom-fitzhenry.me.uk>
Date: Fri, 17 Apr 2026 22:35:08 +0000
Subject: [PATCH] fix systemd detection after argparse migration
---
lib/util/wscript | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/util/wscript b/lib/util/wscript
index 425f659a2ed..b8baabfbea9 100644
--- a/lib/util/wscript
+++ b/lib/util/wscript
@@ -13,7 +13,7 @@ def options(opt):
opt.add_option('--with-systemd',
help=("Enable systemd integration"),
- action='store_true', dest='enable_systemd')
+ action='store_true', dest='enable_systemd', default=None)
opt.add_option('--without-systemd',
help=("Disable systemd integration"),
@@ -21,7 +21,7 @@ def options(opt):
opt.add_option('--with-lttng',
help=("Enable lttng integration"),
- action='store_true', dest='enable_lttng')
+ action='store_true', dest='enable_lttng', default=None)
opt.add_option('--without-lttng',
help=("Disable lttng integration"),
--
2.53.0