summary refs log tree commit diff
path: root/pkgs/misc/drivers
diff options
context:
space:
mode:
authorStijn DW <nixdev@rinsa.eu>2021-04-10 21:50:34 +0200
committerStijn DW <nixdev@rinsa.eu>2021-04-15 18:17:24 +0200
commitdca0aec9b8204a596e4b0e46b533cab318d81150 (patch)
treeb8ed3db911422a815c7cf439969df32b30f83b4c /pkgs/misc/drivers
parent10353970bb4bebb868d68904c816790a5ca2a950 (diff)
infnoise: init at master
Diffstat (limited to 'pkgs/misc/drivers')
-rw-r--r--pkgs/misc/drivers/infnoise/default.nix43
-rw-r--r--pkgs/misc/drivers/infnoise/makefile.patch14
2 files changed, 57 insertions, 0 deletions
diff --git a/pkgs/misc/drivers/infnoise/default.nix b/pkgs/misc/drivers/infnoise/default.nix
new file mode 100644
index 0000000000000..b64cb56c40760
--- /dev/null
+++ b/pkgs/misc/drivers/infnoise/default.nix
@@ -0,0 +1,43 @@
+{ lib, stdenv, fetchFromGitHub, libftdi }:
+
+stdenv.mkDerivation rec {
+  pname = "infnoise";
+  version = "unstable-2019-08-12";
+
+  src = fetchFromGitHub {
+    owner = "13-37-org";
+    repo = "infnoise";
+    rev = "132683d4b5ce0902468b666cba63baea36e97f0c";
+    sha256 = "1dzfzinyvhyy9zj32kqkl19fyhih6sy8r5sa3qahbbr4c30k7flp";
+  };
+
+  # Patch makefile so we can set defines from the command line instead of it depending on .git
+  patches = [ ./makefile.patch ];
+  GIT_COMMIT = src.rev;
+  GIT_VERSION = version;
+  GIT_DATE = "2019-08-12";
+
+  buildInputs = [ libftdi ];
+
+  sourceRoot = "source/software";
+  makefile = "Makefile.linux";
+  makeFlags = [ "PREFIX=$(out)" ];
+  postPatch = ''
+    substituteInPlace init_scripts/infnoise.service --replace "/usr/local" "$out"
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/13-37-org/infnoise";
+    description = "Driver for the Infinite Noise TRNG";
+    longDescription = ''
+      The Infinite Noise TRNG is a USB key hardware true random number generator.
+      It can either provide rng for userland applications, or provide rng for the OS entropy.
+      Add the following to your system configuration for plug and play support, adding to the OS entropy:
+      systemd.packages = [ pkgs.infnoise ];
+      services.udev.packages = [ pkgs.infnoise ];
+    '';
+    license = licenses.cc0;
+    maintainers = with maintainers; [ StijnDW ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/misc/drivers/infnoise/makefile.patch b/pkgs/misc/drivers/infnoise/makefile.patch
new file mode 100644
index 0000000000000..b38519036d2c3
--- /dev/null
+++ b/pkgs/misc/drivers/infnoise/makefile.patch
@@ -0,0 +1,14 @@
+diff --git a/software/Makefile.linux b/software/Makefile.linux
+index db48aa5..df8b3d2 100644
+--- a/Makefile.linux
++++ b/Makefile.linux
+@@ -1,6 +1,6 @@
+-GIT_VERSION := $(shell git --no-pager describe --tags --always)
+-GIT_COMMIT  := $(shell git rev-parse --verify HEAD)
+-GIT_DATE    := $(firstword $(shell git --no-pager show --date=iso-strict --format="%ad" --name-only))
++GIT_VERSION ?= $(shell git --no-pager describe --tags --always)
++GIT_COMMIT  ?= $(shell git rev-parse --verify HEAD)
++GIT_DATE    ?= $(firstword $(shell git --no-pager show --date=iso-strict --format="%ad" --name-only))
+ 
+ PREFIX = $(DESTDIR)/usr/local
+