diff options
author | Peter Simons <simons@cryp.to> | 2012-02-06 19:08:52 +0000 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2012-02-06 19:08:52 +0000 |
commit | 4bfbdda33240ebbbf306d8233ddd48430947b45d (patch) | |
tree | 949b4c5c45442ae3646b93874add8ef11511dec0 /pkgs/os-specific/linux/frandom | |
parent | 1b85da5ae380e62c8fbe19605327914c555d4deb (diff) | |
download | nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar.gz nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar.bz2 nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar.lz nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar.xz nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.tar.zst nixlib-4bfbdda33240ebbbf306d8233ddd48430947b45d.zip |
frandom: very fast random number generator kernel module
nixos support via services.frandom.enable svn path=/nixpkgs/trunk/; revision=32078
Diffstat (limited to 'pkgs/os-specific/linux/frandom')
-rw-r--r-- | pkgs/os-specific/linux/frandom/default.nix | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/frandom/default.nix b/pkgs/os-specific/linux/frandom/default.nix new file mode 100644 index 000000000000..9f07e7c8eb09 --- /dev/null +++ b/pkgs/os-specific/linux/frandom/default.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchurl, kernel }: + +stdenv.mkDerivation rec { + name = "frandom-1.1"; + + src = fetchurl { + url = "http://sourceforge.net/projects/frandom/files/${name}.tar.gz"; + sha256 = "15rgyk4hfawqg7z1spk2xlk1nn6rcdls8gdhc70f91shrc9pvlls"; + }; + + preBuild = '' + kernelVersion=$(cd ${kernel}/lib/modules && ls) + substituteInPlace Makefile \ + --replace "\$(shell uname -r)" "$kernelVersion" \ + --replace "/lib/modules" "${kernel}/lib/modules" + ''; + + installPhase = '' + kernelVersion=$(cd ${kernel}/lib/modules && ls) + ensureDir $out/lib/modules/$kernelVersion/misc + cp frandom.ko $out/lib/modules/$kernelVersion/misc + + ensureDir $out/lib/udev/rules.d + tee $out/lib/udev/rules.d/10-frandom.rules <<-EOF + # + # These are the rules for the frandom devices. In theory, we could let + # udev's catch-all rule create the /dev node based upon the kernel name, + # which gives correct result, except that the default MODE set in + # 50-udev.rules (0600) is too restrictive. + # + KERNEL=="[ef]random", MODE="444", OPTIONS="last_rule" + EOF + ''; + + buildInputs = []; + + meta = { + description = "A very fast random number generator kernel module."; + homepage = http://frandom.sourceforge.net/; + license = "GPLv2"; + maintainers = [ stdenv.lib.maintainers.bluescreen303 ]; + }; +} + |