diff options
author | Alyssa Ross <hi@alyssa.is> | 2024-04-10 20:43:08 +0200 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2024-04-10 20:43:08 +0200 |
commit | 69bfdf2484041b9d242840c4e5017b4703383bb0 (patch) | |
tree | d8bdaa69e7990d7d6f09b594b3c425f742acd2d0 /nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix | |
parent | c8aee4b4363b6bf905a521b05b7476960e8286c8 (diff) | |
parent | d8fe5e6c92d0d190646fb9f1056741a229980089 (diff) | |
download | nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar.gz nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar.bz2 nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar.lz nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar.xz nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.tar.zst nixlib-69bfdf2484041b9d242840c4e5017b4703383bb0.zip |
Merge commit 'd8fe5e6c'
Conflicts: nixpkgs/pkgs/build-support/go/module.nix
Diffstat (limited to 'nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix')
-rw-r--r-- | nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix b/nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix new file mode 100644 index 000000000000..ab62eb88e220 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/elm/lib/makeDotElm.nix @@ -0,0 +1,36 @@ +{ stdenv, lib, fetchurl, registryDat }: + +ver: deps: +let + cmds = lib.mapAttrsToList + (name: info: + let + pkg = stdenv.mkDerivation { + name = lib.replaceStrings [ "/" ] [ "-" ] name + "-${info.version}"; + + src = fetchurl { + url = "https://github.com/${name}/archive/${info.version}.tar.gz"; + meta.homepage = "https://github.com/${name}/"; + inherit (info) sha256; + }; + + dontConfigure = true; + dontBuild = true; + + installPhase = '' + mkdir -p $out + cp -r * $out + ''; + }; + in + '' + mkdir -p .elm/${ver}/packages/${name} + cp -R ${pkg} .elm/${ver}/packages/${name}/${info.version} + '') + deps; +in +(lib.concatStrings cmds) + '' + mkdir -p .elm/${ver}/packages; + cp ${registryDat} .elm/${ver}/packages/registry.dat; + chmod -R +w .elm +'' |