From 52248df095bd7731c3cc8c13c44740e01d4a5228 Mon Sep 17 00:00:00 2001 From: Tom Sydney Kerckhove Date: Mon, 26 Apr 2021 09:59:30 +0200 Subject: [PATCH] php.extensions.snuffleupagus: init at 0.7.0 --- .../php-packages/snuffleupagus/default.nix | 53 +++++++++++++++++++ pkgs/top-level/php-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/development/php-packages/snuffleupagus/default.nix diff --git a/pkgs/development/php-packages/snuffleupagus/default.nix b/pkgs/development/php-packages/snuffleupagus/default.nix new file mode 100644 index 000000000000..222a243606f8 --- /dev/null +++ b/pkgs/development/php-packages/snuffleupagus/default.nix @@ -0,0 +1,53 @@ +{ buildPecl +, lib +, php +, fetchFromGitHub +, pcre' +, fetchpatch +}: + +buildPecl rec { + pname = "snuffleupagus"; + version = "0.7.0"; + src = fetchFromGitHub { + owner = "jvoisin"; + repo = pname; + rev = "v${version}"; + sha256 = "1la6wa9xznc110b7isiy502x71mkvhisq6m8llhczpq4rs4nbcw2"; + }; + + buildInputs = [ + pcre' + ]; + + internalDeps = with php.extensions; [ + session + ] ++ lib.optionals (lib.versionOlder php.version "7.4") [ + hash + ]; + + patches = [ + (fetchpatch { + url = "https://github.com/jvoisin/snuffleupagus/commit/3c528d9d03cec872382a6f400b5701a8fbfd59b4.patch"; + sha256 = "0lnj4xcl867f477mha697d1py1nwxhl18dvvg40qgflpdbywlzns"; + stripLen = 1; + }) + ]; + + sourceRoot = "source/src"; + + configureFlags = [ + "--enable-snuffleupagus" + ]; + + postPhpize = '' + ./configure --enable-snuffleupagus + ''; + + meta = with lib; { + description = "Security module for php7 and php8 - Killing bugclasses and virtual-patching the rest!"; + license = licenses.lgpl3Only; + homepage = "https://github.com/jvoisin/snuffleupagus"; + maintainers = teams.php.members ++ [ maintainers.zupo ]; + }; +} diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 3bbcb453a3c8..a33401e0b53d 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -136,6 +136,8 @@ lib.makeScope pkgs.newScope (self: with self; { smbclient = callPackage ../development/php-packages/smbclient { }; + snuffleupagus = callPackage ../development/php-packages/snuffleupagus { }; + sqlsrv = callPackage ../development/php-packages/sqlsrv { }; swoole = callPackage ../development/php-packages/swoole { };