From 33eb2e8a9c60d08b7ef3d77422007105ae3a10de Mon Sep 17 00:00:00 2001 From: NeverBehave Date: Fri, 9 Feb 2024 16:02:21 -0800 Subject: [PATCH] phpExtensions.ioncube-loader: init at 13.0.2 --- .../php-packages/ioncube-loader/default.nix | 57 +++++++++++++++++++ pkgs/top-level/php-packages.nix | 2 + 2 files changed, 59 insertions(+) create mode 100644 pkgs/development/php-packages/ioncube-loader/default.nix diff --git a/pkgs/development/php-packages/ioncube-loader/default.nix b/pkgs/development/php-packages/ioncube-loader/default.nix new file mode 100644 index 000000000000..290abdffbedd --- /dev/null +++ b/pkgs/development/php-packages/ioncube-loader/default.nix @@ -0,0 +1,57 @@ +{ stdenv +, lib +, fetchzip +, php +}: + +let + phpVersion = lib.versions.majorMinor php.version; + + variant = { + "aarch64-darwin" = { + url = "https://web.archive.org/web/20240209234707/https://downloads.ioncube.com/loader_downloads/ioncube_loaders_dar_arm64.tar.gz"; + sha256 = "sha256-J6+bOXX9uRdrGouMAxt7nROjjfH4P2txb1hmPoHUmdM="; + prefix = "dar"; + }; + "aarch64-linux" = { + url = "https://web.archive.org/web/20240209234617/https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_aarch64.tar.gz"; + sha256 = "sha256-oOO4zr0CssxVGIUIfmAujILqOfQf8dJPADkr03a8HAs="; + prefix = "lin"; + }; + "x86_64-linux" = { + url = "https://web.archive.org/web/20240209052345if_/https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz"; + sha256 = "sha256-rsXKgxKHldBKDjJTsOdJP4SxfxLmMPDY+GizBpuDeyw="; + prefix = "lin"; + }; + "x86_64-darwin" = { + url = "https://web.archive.org/web/20240209234406/https://downloads.ioncube.com/loader_downloads/ioncube_loaders_mac_x86-64.tar.gz"; + sha256 = "sha256-bz2hQOaFbXePa8MhAZHESpZMRjjBH51IgvbR2EfBYMg="; + prefix = "mac"; + }; + }; +in +stdenv.mkDerivation { + version = "13.0.2"; + pname = "ioncube-loader"; + extensionName = "ioncube-loader"; + + src = fetchzip { + url = variant.${stdenv.hostPlatform.system}.url; + sha256 = variant.${stdenv.hostPlatform.system}.sha256; + }; + + installPhase = '' + mkdir -p $out/lib/php/extensions + cp $src/ioncube_loader_${variant.${stdenv.hostPlatform.system}.prefix}_${phpVersion}.so $out/lib/php/extensions/ioncube-loader.so + ''; + + meta = with lib; { + description = "Use ionCube-encoded files on a web server"; + changelog = "https://www.ioncube.com/loaders.php"; + homepage = "https://www.ioncube.com"; + sourceProvenance = [ sourceTypes.binaryNativeCode ]; + license = licenses.unfree; + maintainers = with maintainers; [ neverbehave ]; + platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; + }; +} diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 345ed56b95e7..a1e9f801e3b0 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -260,6 +260,8 @@ lib.makeScope pkgs.newScope (self: with self; { inotify = callPackage ../development/php-packages/inotify { }; + ioncube-loader = callPackage ../development/php-packages/ioncube-loader { }; + mailparse = callPackage ../development/php-packages/mailparse { }; maxminddb = callPackage ../development/php-packages/maxminddb { };