about summary refs log tree commit diff
path: root/modules
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2016-07-08 22:04:10 +0200
committerProfpatsch <mail@profpatsch.de>2016-07-08 22:04:10 +0200
commitd18fed3f646972129c8229fb37aa346d573eab24 (patch)
tree05216c1616f9b1478b1d39c2a28d03a299d72414 /modules
parent02cbf82250e5923a4876f75b94e4b76c6bb9a6a9 (diff)
parentd7a721d7267e19dd114625e8e3d5c96c95c84e89 (diff)
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'modules')
-rw-r--r--modules/user/aszlig/programs/gajim/default.nix9
-rw-r--r--modules/user/aszlig/programs/gajim/gnupg-2.1.13.patch61
-rw-r--r--modules/user/aszlig/programs/taalo-build/default.nix1
3 files changed, 69 insertions, 2 deletions
diff --git a/modules/user/aszlig/programs/gajim/default.nix b/modules/user/aszlig/programs/gajim/default.nix
index 4c8a4304..a3200b8a 100644
--- a/modules/user/aszlig/programs/gajim/default.nix
+++ b/modules/user/aszlig/programs/gajim/default.nix
@@ -37,11 +37,16 @@ let
     gtk-enable-animations = 0
   '';
 
-  gajimPatched = overrideDerivation pkgs.gajim (o: {
+  gajimPatched = let
+    o = pkgs.gajim.drvAttrs;
+  in pkgs.stdenv.mkDerivation (pkgs.gajim.drvAttrs // {
     patches = (o.patches or []) ++ singleton (pkgs.substituteAll {
       src = ./config.patch;
       nix_config = pkgs.writeText "gajim.config" (import ./config.nix lib);
-    });
+    }) ++ singleton ./gnupg-2.1.13.patch;
+    propagatedBuildInputs = (o.propagatedBuildInputs or []) ++ [
+      pkgs.pythonPackages.python-axolotl
+    ];
     postPatch = (o.postPatch or "") + ''
       sed -i -e '/^export/i export GTK2_RC_FILES="${gtkTheme}"' \
         scripts/gajim.in
diff --git a/modules/user/aszlig/programs/gajim/gnupg-2.1.13.patch b/modules/user/aszlig/programs/gajim/gnupg-2.1.13.patch
new file mode 100644
index 00000000..062d173f
--- /dev/null
+++ b/modules/user/aszlig/programs/gajim/gnupg-2.1.13.patch
@@ -0,0 +1,61 @@
+diff --git a/src/common/gnupg.py b/src/common/gnupg.py
+index 2743f7a..44d494f 100644
+--- a/src/common/gnupg.py
++++ b/src/common/gnupg.py
+@@ -229,7 +229,8 @@ class Verify(object):
+                      "DECRYPTION_OKAY", "INV_SGNR", "FILE_START", "FILE_ERROR",
+                      "FILE_DONE", "PKA_TRUST_GOOD", "PKA_TRUST_BAD", "BADMDC",
+                      "GOODMDC", "NO_SGNR", "NOTATION_NAME", "NOTATION_DATA",
+-                     "PROGRESS", "PINENTRY_LAUNCHED", "NEWSIG"):
++                     "PROGRESS", "PINENTRY_LAUNCHED", "NEWSIG",
++                     "KEY_CONSIDERED"):
+             pass
+         elif key == "BADSIG":
+             self.valid = False
+@@ -330,7 +331,7 @@ class ImportResult(object):
+     }
+ 
+     def handle_status(self, key, value):
+-        if key == "IMPORTED":
++        if key in ("IMPORTED", "KEY_CONSIDERED"):
+             # this duplicates info we already see in import_ok & import_problem
+             pass
+         elif key == "NODATA":
+@@ -510,7 +511,7 @@ class Crypt(Verify, TextHandler):
+         if key in ("ENC_TO", "USERID_HINT", "GOODMDC", "END_DECRYPTION",
+                    "BEGIN_SIGNING", "NO_SECKEY", "ERROR", "NODATA", "PROGRESS",
+                    "CARDCTRL", "BADMDC", "SC_OP_FAILURE", "SC_OP_SUCCESS",
+-                   "PINENTRY_LAUNCHED"):
++                   "PINENTRY_LAUNCHED", "KEY_CONSIDERED"):
+             # in the case of ERROR, this is because a more specific error
+             # message will have come first
+             pass
+@@ -559,7 +560,7 @@ class GenKey(object):
+ 
+     def handle_status(self, key, value):
+         if key in ("PROGRESS", "GOOD_PASSPHRASE", "NODATA", "KEY_NOT_CREATED",
+-                   "PINENTRY_LAUNCHED"):
++                   "PINENTRY_LAUNCHED", "KEY_CONSIDERED"):
+             pass
+         elif key == "KEY_CREATED":
+             (self.type,self.fingerprint) = value.split()
+@@ -582,7 +583,9 @@ class DeleteResult(object):
+     }
+ 
+     def handle_status(self, key, value):
+-        if key == "DELETE_PROBLEM":
++        if key == "KEY_CONSIDERED":
++            pass
++        elif key == "DELETE_PROBLEM":
+             self.status = self.problem_reason.get(value,
+                                                   "Unknown error: %r" % value)
+         else:
+@@ -613,7 +616,7 @@ class Sign(TextHandler):
+                    "GOOD_PASSPHRASE", "BEGIN_SIGNING", "CARDCTRL", "INV_SGNR",
+                    "NO_SGNR", "MISSING_PASSPHRASE", "NEED_PASSPHRASE_PIN",
+                    "SC_OP_FAILURE", "SC_OP_SUCCESS", "PROGRESS",
+-                   "PINENTRY_LAUNCHED"):
++                   "PINENTRY_LAUNCHED", "KEY_CONSIDERED"):
+             pass
+         elif key in ("KEYEXPIRED", "SIGEXPIRED"):
+             self.status = 'key expired'
diff --git a/modules/user/aszlig/programs/taalo-build/default.nix b/modules/user/aszlig/programs/taalo-build/default.nix
index 3e89436a..55356e9f 100644
--- a/modules/user/aszlig/programs/taalo-build/default.nix
+++ b/modules/user/aszlig/programs/taalo-build/default.nix
@@ -63,6 +63,7 @@ let
     #!${pkgs.stdenv.shell}
     if tmpdir="$("${pkgs.coreutils}/bin/mktemp" -d -t taalo-build.XXXXXX)"; then
       trap "rm -rf '$tmpdir'" EXIT
+      set -o pipefail
       drvs="$(nix-instantiate --add-root "$tmpdir/derivation" --indirect "$@" \
         | cut -d'!' -f1)" || exit 1
       ${backend} $("${pkgs.coreutils}/bin/readlink" $drvs)