pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / development / compilers / elm / lib / makeDotElm.nix
blobab62eb88e2202e59b71acc796fe273e93f2be23a
1 { stdenv, lib, fetchurl, registryDat }:
3 ver: deps:
4 let
5   cmds = lib.mapAttrsToList
6     (name: info:
7       let
8         pkg = stdenv.mkDerivation {
9           name = lib.replaceStrings [ "/" ] [ "-" ] name + "-${info.version}";
11           src = fetchurl {
12             url = "https://github.com/${name}/archive/${info.version}.tar.gz";
13             meta.homepage = "https://github.com/${name}/";
14             inherit (info) sha256;
15           };
17           dontConfigure = true;
18           dontBuild = true;
20           installPhase = ''
21             mkdir -p $out
22             cp -r * $out
23           '';
24         };
25       in
26       ''
27         mkdir -p .elm/${ver}/packages/${name}
28         cp -R ${pkg} .elm/${ver}/packages/${name}/${info.version}
29       '')
30     deps;
32 (lib.concatStrings cmds) + ''
33   mkdir -p .elm/${ver}/packages;
34   cp ${registryDat} .elm/${ver}/packages/registry.dat;
35   chmod -R +w .elm