summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pkgs/default.nix1
-rw-r--r--pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch29
-rw-r--r--pkgs/snapborg/default.nix34
3 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 484ca77..4a275a3 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -5,5 +5,6 @@ in {
override = {};
athena-bccr = callPackage ./athena-bccr {};
+ snapborg = final.python3Packages.callPackage ./snapborg {};
spliit = callPackage ./spliit {};
}
diff --git a/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch b/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch
new file mode 100644
index 0000000..33f7a0c
--- /dev/null
+++ b/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch
@@ -0,0 +1,29 @@
+From c363931656938f9cc3354b8e2797fe9abac1b0e3 Mon Sep 17 00:00:00 2001
+From: Alejandro Soto <alejandro@34project.org>
+Date: Sun, 31 Aug 2025 13:30:45 -0600
+Subject: [PATCH] Remove "env" arg from subprocess calls
+
+---
+ snapborg/borg.py | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/snapborg/borg.py b/snapborg/borg.py
+index 89a3d84..b74ddf7 100644
+--- a/snapborg/borg.py
++++ b/snapborg/borg.py
+@@ -173,11 +173,10 @@ def launch_borg(args, password=None, print_output=False, dryrun=False, cwd=None)
+ # TODO: parse output from JSON log lines
+ try:
+ if print_output:
+- subprocess.run(cmd, env=env, check=True, cwd=cwd)
++ subprocess.run(cmd, check=True, cwd=cwd)
+ else:
+ subprocess.check_output(cmd,
+ stderr=subprocess.STDOUT,
+- env=env,
+ cwd=cwd)
+ except CalledProcessError as e:
+ if e.returncode == 1:
+--
+2.49.0
+
diff --git a/pkgs/snapborg/default.nix b/pkgs/snapborg/default.nix
new file mode 100644
index 0000000..271be5c
--- /dev/null
+++ b/pkgs/snapborg/default.nix
@@ -0,0 +1,34 @@
+{
+ borgbackup,
+ buildPythonApplication,
+ fetchFromGitHub,
+ lib,
+ packaging,
+ pyyaml,
+}:
+buildPythonApplication {
+ pname = "snapborg";
+ version = "0.1.0-unstable-20250331";
+
+ src = fetchFromGitHub {
+ repo = "snapborg";
+ owner = "enzingerm";
+
+ rev = "7e860395319f995161a6e0c7954ce47635e3cd59";
+ hash = "sha256-RzYL4IHulk1Q/ALWFs6YCTeCO8ohwqXH2NMHRctRVSA=";
+ };
+
+ patches = [
+ ./0001-Remove-env-arg-from-subprocess-calls.patch # Fixes broken $PATH when calling borg
+ ];
+
+ propagatedBuildInputs = [
+ borgbackup
+ packaging
+ pyyaml
+ ];
+
+ preFixup = ''
+ makeWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [borgbackup]})
+ '';
+}