about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorxeji <36407913+xeji@users.noreply.github.com>2018-05-06 00:05:39 +0200
committerGitHub <noreply@github.com>2018-05-06 00:05:39 +0200
commit71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91 (patch)
treeab9c596396268424aad2599d2f18311d9b1b9c3b /pkgs
parent3be89545798ca12a8bf7f1312cb2fcd3399fdf69 (diff)
parentd84a06feca9b6d43df669610523665067a26d41d (diff)
downloadnixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar.gz
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar.bz2
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar.lz
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar.xz
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.tar.zst
nixlib-71b4afe39ab3a0439e45e7e3e7e5079fb7a09c91.zip
Merge pull request #40012 from bfortz/eid-mw-4.4.1
 eid-mw: 4.1.19 -> 4.4.1
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/tools/security/eid-mw/default.nix51
-rw-r--r--pkgs/tools/security/eid-viewer/default.nix42
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 34 insertions, 61 deletions
diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix
index a11b70917c8d..eb8861486747 100644
--- a/pkgs/tools/security/eid-mw/default.nix
+++ b/pkgs/tools/security/eid-mw/default.nix
@@ -1,20 +1,30 @@
 { stdenv, fetchFromGitHub
 , autoreconfHook, pkgconfig
-, gtk3, nssTools, pcsclite }:
+, gtk3, nssTools, pcsclite
+, libxml2, libproxy 
+, openssl, curl
+, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "eid-mw-${version}";
-  version = "4.1.19";
+  version = "4.4.1";
 
   src = fetchFromGitHub {
-    sha256 = "191c74kxfrfb894v8y4vi2iygyffjy9jjq5fj7cnnddgwai5n3c5";
+    sha256 = "0an7xgj5rzl75kq6qfrmm886v639hhlh7c9yfs8iihc47wghpma8"; 
     rev = "v${version}";
     repo = "eid-mw";
     owner = "Fedict";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ gtk3 pcsclite ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig makeWrapper ];
+  buildInputs = [ gtk3 pcsclite libxml2 libproxy curl openssl ];
+  preConfigure = ''
+    mkdir openssl
+    ln -s ${openssl.out}/lib openssl
+    ln -s ${openssl.bin}/bin openssl
+    ln -s ${openssl.dev}/include openssl
+    export SSL_PREFIX=$(realpath openssl)
+    '';
 
   postPatch = ''
     sed 's@m4_esyscmd_s(.*,@[${version}],@' -i configure.ac
@@ -22,41 +32,48 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--enable-dialogs=yes" ];
 
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
   postInstall = ''
     install -D ${./eid-nssdb.in} $out/bin/eid-nssdb
     substituteInPlace $out/bin/eid-nssdb \
       --replace "modutil" "${nssTools}/bin/modutil"
 
-    # Only provides a useless "about-eid-mw.desktop" that segfaults anyway:
-    rm -r $out/share/applications $out/bin/about-eid-mw
+    rm $out/bin/about-eid-mw
+    wrapProgram $out/bin/eid-viewer --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/$name" 
   '';
 
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
   meta = with stdenv.lib; {
     description = "Belgian electronic identity card (eID) middleware";
     homepage = http://eid.belgium.be/en/using_your_eid/installing_the_eid_software/linux/;
     license = licenses.lgpl3;
     longDescription = ''
       Allows user authentication and digital signatures with Belgian ID cards.
-      Also requires a running pcscd service and compatible card reader.
+      Also requires a running pcscd service and compatible card reader. 
+
+      eid-viewer is also installed.
 
+      **TO FIX:** 
+      The procedure below did not work for me, I had to install the .so directly in firefox as instructed at
+      https://eid.belgium.be/en/log-eid#7507
+      and specify
+      /run/current-system/sw/lib/libbeidpkcs11.so
+      as the path to the module.
+
+      This package only installs the libraries. To use eIDs in Firefox or
+      Chromium, the eID Belgium add-on must be installed.
       This package only installs the libraries. To use eIDs in NSS-compatible
       browsers like Chrom{e,ium} or Firefox, each user must first execute:
-
         ~$ eid-nssdb add
-
       (Running the script once as root with the --system option enables eID
       support for all users, but will *not* work when using Chrom{e,ium}!)
-
       Before uninstalling this package, it is a very good idea to run
-
         ~$ eid-nssdb [--system] remove
-
       and remove all ~/.pki and/or /etc/pki directories no longer needed.
     '';
     platforms = platforms.linux;
+    maintainers = with maintainers; [ bfortz ];
   };
 }
diff --git a/pkgs/tools/security/eid-viewer/default.nix b/pkgs/tools/security/eid-viewer/default.nix
deleted file mode 100644
index 10cc314fe1db..000000000000
--- a/pkgs/tools/security/eid-viewer/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ stdenv, fetchurl, makeWrapper, jre, pcsclite }:
-
-stdenv.mkDerivation rec {
-  name = "eid-viewer-${version}";
-  version = "4.1.9";
-
-  src = fetchurl {
-    url = "https://downloads.services.belgium.be/eid/eid-viewer-${version}-v${version}.src.tar.gz";
-    sha256 = "0bq9jl4kl97j0dfhz4crcb1wqhn420z5vpg510zadvrmqjhy1x4g";
-  };
-
-  buildInputs = [ jre pcsclite ];
-  nativeBuildInputs = [ makeWrapper ];
-
-  unpackPhase = "tar -xzf ${src} --strip-components=1";
-
-  preConfigure = ''
-    substituteInPlace eid-viewer.sh.in --replace "exec java" "exec ${jre}/bin/java"
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/eid-viewer --suffix LD_LIBRARY_PATH : ${pcsclite}/lib
-    cat >> $out/share/applications/eid-viewer.desktop << EOF
-    # eid-viewer creates XML without a header, making it "plain text":
-    MimeType=application/xml;text/xml;text/plain
-    EOF
-  '';
-
-  doCheck = true;
-
-  meta = with stdenv.lib; {
-    description = "Belgian electronic identity card (eID) viewer";
-    homepage = http://eid.belgium.be/en/using_your_eid/installing_the_eid_software/linux/;
-    license = licenses.lgpl3;
-    longDescription = ''
-      A simple, graphical Java application to view, print and save data from
-      Belgian electronic identity cards. Independent of the eid-mw package,
-      which is required to actually use your eID for authentication or signing.
-    '';
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 01f666d37fc4..1c4d182d2d3a 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2108,8 +2108,6 @@ with pkgs;
 
   eid-mw = callPackage ../tools/security/eid-mw { };
 
-  eid-viewer = callPackage ../tools/security/eid-viewer { };
-
   mcrcon = callPackage ../tools/networking/mcrcon {};
 
   tealdeer = callPackage ../tools/misc/tealdeer/default.nix { };