nixpkgs/pkgs/by-name/mc/mcrypt/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

39 lines
1.1 KiB
Nix

{ lib, stdenv, fetchurl, libmcrypt, libmhash }:
stdenv.mkDerivation rec {
version = "2.6.8";
pname = "mcrypt";
src = fetchurl {
url = "mirror://sourceforge/mcrypt/MCrypt/${version}/mcrypt-${version}.tar.gz";
sha256 = "5145aa844e54cca89ddab6fb7dd9e5952811d8d787c4f4bf27eb261e6c182098";
};
patches = [
./format-string_CVE-2012-4426.patch
./overflow_CVE-2012-4409.patch
./segv.patch
./sprintf_CVE-2012-4527.patch
./malloc_to_stdlib.patch
];
buildInputs = [ libmcrypt libmhash ];
env = lib.optionalAttrs stdenv.cc.isClang {
NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration";
};
meta = {
description = "Replacement for old UNIX crypt(1)";
longDescription = ''
mcrypt, and the accompanying libmcrypt, are intended to be replacements
for the old Unix crypt, except that they are under the GPL and support an
ever-wider range of algorithms and modes.
'';
homepage = "https://mcrypt.sourceforge.net";
license = lib.licenses.gpl3Only;
platforms = lib.platforms.all;
maintainers = [ lib.maintainers.qknight ];
};
}