Skip to content
Merged

open-eid #15016

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions pkgs/applications/networking/browsers/firefox/wrapper.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
, supportsJDK, jrePlugin, icedtea_web
, trezor-bridge, bluejeans, djview4, adobe-reader
, google_talk_plugin, fribid, gnome3/*.gnome_shell*/
, esteidfirefoxplugin
}:

## configurability of the wrapper itself
Expand Down Expand Up @@ -42,6 +43,7 @@ let
++ lib.optional (cfg.enableTrezor or false) trezor-bridge
++ lib.optional (cfg.enableBluejeans or false) bluejeans
++ lib.optional (cfg.enableAdobeReader or false) adobe-reader
++ lib.optional (cfg.enableEsteid or false) esteidfirefoxplugin
);
libs = [ gst_all.gstreamer gst_all.gst-plugins-base ]
++ lib.optionals (cfg.enableQuakeLive or false)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{ stdenv, fetchurl, gtk2, openssl, pcsclite, pkgconfig, opensc }:

stdenv.mkDerivation rec {
version = "3.12.1.1142";
name = "esteidfirefoxplugin-${version}";

src = fetchurl {
url = "https://installer.id.ee/media/ubuntu/pool/main/e/esteidfirefoxplugin/esteidfirefoxplugin_3.12.1.1142.orig.tar.xz";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like it is possible to re-use version here (and elsewhere)

sha256 = "0y7759x1xr00p5r3c5wpllcqqnnxh2zi74cmy4m9m690z3ywn0fx";
};

unpackPhase = ''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm curious, what is the reason for this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without that nix told me that he can't unpack because of multiply outputs.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe sourceRoot = "."; would make the default unpacker happy.

Copy link
Contributor

@joachifm joachifm Apr 27, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, that makes sense, I guess setting sourceRoot wouldn't work? EDIT: @dezgeg beat me to as I was pressing the button :)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know why, but sourceRoot = "."; didn't work :(

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, I tried it with qdigidoc, seems to work. I'd think that simply unpackPhase = ''tar xf $src'' would work, too. Anyway, not terribly important ...

mkdir src
tar xf $src -C src
cd src
'';

buildInputs = [ gtk2 openssl pcsclite pkgconfig opensc ];

buildPhase = ''
sed -i "s|opensc-pkcs11.so|${opensc}/lib/pkcs11/opensc-pkcs11.so|" Makefile
make plugin
'';

installPhase = ''
plugins=$out/lib/mozilla/plugins
mkdir -p $plugins
cp -a npesteid-firefox-plugin.so $plugins/
rp=$(patchelf --print-rpath $plugins/npesteid-firefox-plugin.so)
patchelf --set-rpath "$rp:${opensc}/lib:${opensc}/lib/pkcs11" $plugins/npesteid-firefox-plugin.so
'';

passthru.mozillaPlugin = "/lib/mozilla/plugins";

dontStrip = true;
dontPatchELF = true;

meta = with stdenv.lib; {
description = "Firefox ID card signing plugin";
homepage = "http://www.id.ee/";
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.jagajaga ];
};
}
28 changes: 28 additions & 0 deletions pkgs/development/libraries/libdigidoc/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{ stdenv, fetchurl, cmake, openssl, pcsclite, opensc, libxml2 }:

stdenv.mkDerivation rec {

version = "3.10.1.1212";
name = "libdigidoc-${version}";

src = fetchurl {
url = "https://installer.id.ee/media/ubuntu/pool/main/libd/libdigidoc/libdigidoc_3.10.1.1212.orig.tar.xz";
sha256 = "ad5e0603aea2e02977f17318cc93a53c3a19a815e57b2347d97136d11c110807";
};

unpackPhase = ''
mkdir src
tar xf $src -C src
cd src
'';

buildInputs = [ cmake openssl pcsclite opensc libxml2 ];

meta = with stdenv.lib; {
description = "Library for creating DigiDoc signature files";
homepage = "http://www.id.ee/";
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.jagajaga ];
};
}
31 changes: 31 additions & 0 deletions pkgs/development/libraries/libdigidocpp/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{ stdenv, fetchurl, cmake, libdigidoc, minizip, pcsclite, opensc, openssl
, xercesc, xml-security-c, pkgconfig, xsd, zlib, vim }:

stdenv.mkDerivation rec {

version = "3.12.0.1317";
name = "libdigidocpp-${version}";

src = fetchurl {
url = "https://installer.id.ee/media/ubuntu/pool/main/libd/libdigidocpp/libdigidocpp_3.12.0.1317.orig.tar.xz";
sha256 = "8059e1dbab99f062d070b9da0b1334b7226f1ab9badcd7fddea3100519d1f9a9";
};

unpackPhase = ''
mkdir src
tar xf $src -C src
cd src
'';

buildInputs = [ cmake libdigidoc minizip pcsclite opensc openssl xercesc
xml-security-c pkgconfig xsd zlib vim
];

meta = with stdenv.lib; {
description = "Library for creating DigiDoc signature files";
homepage = "http://www.id.ee/";
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.jagajaga ];
};
}
28 changes: 28 additions & 0 deletions pkgs/development/libraries/xalanc/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{ stdenv, fetchurl, xercesc }:

stdenv.mkDerivation rec {
name = "xalan-c-${version}";
version = "1.11";

src = fetchurl {
url = "http://www.eu.apache.org/dist/xalan/xalan-c/sources/xalan_c-${version}-src.tar.gz";
sha256 = "0a3a2b15vpacnqgpp6fiy1pwyc8q6ywzvyb5445f6wixfdspypjg";
};

configurePhase = ''
export XALANCROOT=`pwd`/c
cd `pwd`/c
mkdir -p $out/usr
./runConfigure -p linux -c gcc -x g++ -P$out/usr
'';

buildInputs = [ xercesc ];

meta = {
homepage = http://xalan.apache.org/;
description = "A XSLT processor for transforming XML documents";
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.jagajaga ];
};
}
34 changes: 34 additions & 0 deletions pkgs/development/libraries/xml-security-c/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{ stdenv, fetchurl, xalanc, xercesc, openssl, pkgconfig }:

stdenv.mkDerivation rec {
name = "xml-security-c-${version}";
version = "1.7.3";

src = fetchurl {
url = "http://www.apache.org/dist/santuario/c-library/${name}.tar.gz";
sha256 = "e5226e7319d44f6fd9147a13fb853f5c711b9e75bf60ec273a0ef8a190592583";
};

patchPhase = ''
mkdir -p xsec/yes/lib
sed -i -e 's/-O2 -DNDEBUG/-DNDEBUG/g' configure
'';

configurePhase = ''
./configure --prefix=$out \
--with-openssl \
--with-xerces \
--with-xalan \
--disable-static
'';

buildInputs = [ xalanc xercesc openssl pkgconfig ];

meta = {
homepage = http://santuario.apache.org/;
description = "C++ Implementation of W3C security standards for XML";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.jagajaga ];
};
}
38 changes: 38 additions & 0 deletions pkgs/development/libraries/xsd/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{ stdenv, fetchurl, xercesc }:

let
fixed_paths = ''LDFLAGS="-L${xercesc}/lib" CPPFLAGS="-I${xercesc}/include"'';
in
stdenv.mkDerivation rec {
name = "xsd-${version}";
version = "4.0.0";

src = fetchurl {
url = "http://codesynthesis.com/download/xsd/4.0/xsd-4.0.0+dep.tar.bz2";
sha256 = "05wqhmd5cd4pdky8i8qysnh96d2h16ly8r73whmbxkajiyf2m9gc";
};

patches = [ ./xsdcxx.patch ];

configurePhase = ''
patchShebangs .
'';

buildPhase = ''
make ${fixed_paths}
'';

buildInputs = [ xercesc ];

installPhase = ''
make ${fixed_paths} install_prefix="$out" install
'';

meta = {
homepage = http://www.codesynthesis.com/products/xsd;
description = "An open-source, cross-platform W3C XML Schema to C++ data binding compiler";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.jagajaga ];
};
}
126 changes: 126 additions & 0 deletions pkgs/development/libraries/xsd/xsdcxx.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
--- xsd-4.0.0+dep/xsd/doc/xsd.1~ 2014-09-14 12:25:36.862267587 +0000
+++ xsd-4.0.0+dep/xsd/doc/xsd.1 2014-09-14 12:28:25.728229892 +0000
@@ -1,16 +1,16 @@
.\" Process this file with
-.\" groff -man -Tascii xsd.1
+.\" groff -man -Tascii xsdcxx.1
.\"
.TH XSD 1 "July 2014" "XSD 4.0.0"
.SH NAME
-xsd \- W3C XML Schema to C++ Compiler
+xsdcxx \- W3C XML Schema to C++ Compiler
.\"
.\"
.\"
.\"--------------------------------------------------------------------
.SH SYNOPSIS
.\"--------------------------------------------------------------------
-.B xsd
+.B xsdcxx
.I command
.B [
.I options
@@ -20,19 +20,19 @@
.I file
.B ...]
.in
-.B xsd help
+.B xsdcxx help
.B [
.I command
.B ]
.in
-.B xsd version
+.B xsdcxx version
.\"
.\"
.\"
.\"--------------------------------------------------------------------
.SH DESCRIPTION
.\"--------------------------------------------------------------------
-.B xsd
+.B xsdcxx
generates vocabulary-specific, statically-typed C++ mapping from W3C XML
Schema definitions. Particular mapping to produce is selected by a
.IR command .
@@ -96,7 +96,7 @@
.PP
.RS
.RS 3
-.B xsd help
+.B xsdcxx help
.I command
.RE
.PP
@@ -206,7 +206,7 @@
\fIfilename\fP \fInamespace\fP

For example, if you have file \fBhello\.xsd\fP with namespace
-\fBhttp://example\.com/hello\fP and you run \fBxsd\fP on this file, then the
+\fBhttp://example\.com/hello\fP and you run \fBxsdcxx\fP on this file, then the
string in question will be:

\fBhello\.xsd\. http://example\.com/hello\fP
@@ -1632,7 +1632,7 @@
.\"
.SH DIAGNOSTICS
If the input file is not a valid W3C XML Schema definition,
-.B xsd
+.B xsdcxx
will issue diagnostic messages to
.B STDERR
and exit with non-zero exit code.
--- xsd-4.0.0+dep/xsd/doc/xsd.xhtml~ 2014-09-14 12:28:37.731513138 +0000
+++ xsd-4.0.0+dep/xsd/doc/xsd.xhtml 2014-09-14 12:30:11.277789610 +0000
@@ -50,19 +50,19 @@

<h1>NAME</h1>

- <p>xsd - W3C XML Schema to C++ Compiler</p>
+ <p>xsdcxx - W3C XML Schema to C++ Compiler</p>

<h1>SYNOPSIS</h1>

<dl id="synopsis">
- <dt><code><b>xsd</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
- <dt><code><b>xsd help</b> [<i>command</i>]</code></dt>
- <dt><code><b>xsd version</b></code></dt>
+ <dt><code><b>xsdcxx</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
+ <dt><code><b>xsdcxx help</b> [<i>command</i>]</code></dt>
+ <dt><code><b>xsdcxx version</b></code></dt>
</dl>

<h1>DESCRIPTION</h1>

- <p><code><b>xsd</b></code> generates vocabulary-specific, statically-typed
+ <p><code><b>xsdcxx</b></code> generates vocabulary-specific, statically-typed
C++ mapping from W3C XML Schema definitions. Particular mapping to
produce is selected by a <code><i>command</i></code>. Each mapping has
a number of mapping-specific <code><i>options</i></code> that should
@@ -104,7 +104,7 @@

<dt><code><b>help</b></code></dt>
<dd>Print usage information and exit. Use
- <p><code><b>xsd help</b> <i>command</i></code></p>
+ <p><code><b>xsdcxx help</b> <i>command</i></code></p>
for command-specific help.
</dd>

@@ -219,7 +219,7 @@

<p>For example, if you have file <code><b>hello.xsd</b></code> with
namespace <code><b>http://example.com/hello</b></code> and you run
- <code><b>xsd</b></code> on this file, then the string in question will
+ <code><b>xsdcxx</b></code> on this file, then the string in question will
be:</p>

<p><code><b>hello.xsd. http://example.com/hello</b></code></p>
@@ -1530,7 +1530,7 @@
<h1>DIAGNOSTICS</h1>

<p>If the input file is not a valid W3C XML Schema definition,
- <code><b>xsd</b></code> will issue diagnostic messages to STDERR
+ <code><b>xsdcxx</b></code> will issue diagnostic messages to STDERR
and exit with non-zero exit code.</p>

<h1>BUGS</h1>
Loading