diff --git a/pkgs/by-name/gp/gpsd/package.nix b/pkgs/by-name/gp/gpsd/package.nix index adcde9cc1d97..553f2780c448 100644 --- a/pkgs/by-name/gp/gpsd/package.nix +++ b/pkgs/by-name/gp/gpsd/package.nix @@ -84,6 +84,7 @@ stdenv.mkDerivation rec { patches = [ ./sconstruct-env-fixes.patch + ./sconstrict-rundir-fixes.patch # fix build with Python 3.12 (fetchpatch { diff --git a/pkgs/by-name/gp/gpsd/sconstrict-rundir-fixes.patch b/pkgs/by-name/gp/gpsd/sconstrict-rundir-fixes.patch new file mode 100644 index 000000000000..386211198b65 --- /dev/null +++ b/pkgs/by-name/gp/gpsd/sconstrict-rundir-fixes.patch @@ -0,0 +1,21 @@ +diff -Naur gpsd-3.25.orig/SConscript gpsd-3.25/SConscript +--- gpsd-3.25.orig/SConscript 2025-03-29 13:33:34 ++++ gpsd-3.25/SConscript 2025-03-29 13:34:24 +@@ -15,6 +15,7 @@ + import os + import pickle + import re ++import platform + # replacement for functions from the commands module, which is deprecated. + import subprocess + import sys +@@ -399,7 +400,7 @@ + def_group = "dialout" + + # darwin and BSDs do not have /run, maybe others. +-if os.path.exists("/run"): ++if "BSD" in os.uname().sysname or platform.system() == "Darwin": + rundir = "/run" + else: + rundir = "/var/run" + \ No newline at end of file