diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index e098cf76fd5d..a90651883e7d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -13389,4 +13389,10 @@ github = "vdot0x23"; githubId = 40716069; }; + jpagex = { + name = "Jérémy Pagé"; + email = "contact@jeremypage.me"; + github = "jpagex"; + githubId = 635768; + }; } diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix index b82f14d9ef9f..a4b0d12fd8b7 100644 --- a/pkgs/development/compilers/elm/default.nix +++ b/pkgs/development/compilers/elm/default.nix @@ -2,7 +2,7 @@ , haskell, haskellPackages, nodejs , fetchurl, fetchpatch, makeWrapper, writeScriptBin # Rust dependecies -, curl, rustPlatform, openssl, pkg-config, Security +, curl, rustPlatform, openssl, pkg-config, Security, darwin }: let fetchElmDeps = import ./fetchElmDeps.nix { inherit stdenv lib fetchurl; }; @@ -111,6 +111,17 @@ let maintainers = [ maintainers.turbomack ]; }; }; + + elm-test-rs = import ./packages/elm-test-rs.nix { + inherit lib rustPlatform fetchurl openssl stdenv Security darwin; + } // { + meta = with lib; { + description = "Fast and portable executable to run your Elm tests"; + homepage = "https://github.com/mpizenberg/elm-test-rs"; + license = licenses.bsd3; + maintainers = [ maintainers.jpagex ]; + }; + }; }; elmNodePackages = with elmLib; diff --git a/pkgs/development/compilers/elm/packages/elm-test-rs.nix b/pkgs/development/compilers/elm/packages/elm-test-rs.nix new file mode 100644 index 000000000000..a482809ab50d --- /dev/null +++ b/pkgs/development/compilers/elm/packages/elm-test-rs.nix @@ -0,0 +1,18 @@ +{ lib, rustPlatform, fetchurl, openssl, stdenv, Security, darwin }: +rustPlatform.buildRustPackage rec { + pname = "elm-test-rs"; + version = "2.0"; + + src = fetchurl { + url = "https://github.com/mpizenberg/elm-test-rs/archive/v${version}.tar.gz"; + sha256 = "sha256:1manr42w613r9vyji7pxx5gb08jcgkdxv29qqylrqlwxa8d5dcid"; + }; + + buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security darwin.apple_sdk.frameworks.CoreServices ]; + + cargoSha256 = "sha256:1dpdlzv96kpc25yf5jgsz9qldghyw35x382qpxhkadkn5dryzjvd"; + verifyCargoDeps = true; + + # Tests perform networking and therefore can't work in sandbox + doCheck = false; +}