2017-07-09 20:22:57 +01:00
|
|
|
{ stdenv, fetchFromGitHub }:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
name = "libargon2-${version}";
|
|
|
|
version = "20161029";
|
2017-07-10 08:51:15 +01:00
|
|
|
|
2017-07-09 20:22:57 +01:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "P-H-C";
|
|
|
|
repo = "phc-winner-argon2";
|
|
|
|
rev = "${version}";
|
|
|
|
sha256 = "021g8wi4g67ywm8zf3yncqwrmfz7ypgm1ih9wcmnxip5n75rymh5";
|
|
|
|
};
|
|
|
|
|
|
|
|
installPhase = ''
|
2017-07-10 08:51:15 +01:00
|
|
|
runHook preInstall
|
2017-07-09 20:22:57 +01:00
|
|
|
mkdir -p $out/lib/pkgconfig
|
|
|
|
substitute libargon2.pc $out/lib/pkgconfig/libargon2.pc \
|
|
|
|
--replace @UPSTREAM_VER@ "${version}" \
|
|
|
|
--replace @HOST_MULTIARCH@ "" \
|
|
|
|
--replace 'prefix=/usr' "prefix=$out"
|
2017-07-10 08:51:15 +01:00
|
|
|
|
|
|
|
make install PREFIX=$out
|
2017-07-09 20:22:57 +01:00
|
|
|
ln -s $out/lib/libargon2.so $out/lib/libargon2.so.0
|
2017-07-10 08:51:15 +01:00
|
|
|
runHook postInstall
|
2017-07-09 20:22:57 +01:00
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "A key derivation function that was selected as the winner of the Password Hashing Competition in July 2015";
|
|
|
|
longDescription = ''
|
|
|
|
A password-hashing function created by by Alex Biryukov, Daniel Dinu, and
|
|
|
|
Dmitry Khovratovich. Argon2 was declared the winner of the Password
|
|
|
|
Hashing Competition (PHC). There were 24 submissions and 9 finalists.
|
|
|
|
Catena, Lyra2, Makwa and yescrypt were given special recognition. The PHC
|
|
|
|
recommends using Argon2 rather than legacy algorithms.
|
|
|
|
'';
|
|
|
|
homepage = https://www.argon2.com/;
|
|
|
|
license = with licenses; [ asl20 cc0 ];
|
|
|
|
maintainers = with maintainers; [ taeer olynch ];
|
|
|
|
platforms = platforms.linux;
|
|
|
|
};
|
|
|
|
}
|