diff options
Diffstat (limited to 'nixpkgs/pkgs/development/compilers/crystal2nix')
-rw-r--r-- | nixpkgs/pkgs/development/compilers/crystal2nix/default.nix | 35 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/compilers/crystal2nix/shards.nix | 12 |
2 files changed, 47 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix b/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix new file mode 100644 index 000000000000..3a53525b4771 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/crystal2nix/default.nix @@ -0,0 +1,35 @@ +{ lib, fetchFromGitHub, crystal, makeWrapper, nix-prefetch-git }: + +crystal.buildCrystalPackage rec { + pname = "crystal2nix"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "peterhoeg"; + repo = "crystal2nix"; + rev = "v${version}"; + hash = "sha256-gb2vgKWVXwYWfUUcFvOLFF0qB4CTBekEllpyKduU1Mo="; + }; + + format = "shards"; + + shardsFile = ./shards.nix; + + nativeBuildInputs = [ makeWrapper ]; + + postInstall = '' + wrapProgram $out/bin/crystal2nix \ + --prefix PATH : ${lib.makeBinPath [ nix-prefetch-git ]} + ''; + + # temporarily off. We need the checks to execute the wrapped binary + doCheck = false; + + doInstallCheck = true; + + meta = with lib; { + description = "Utility to convert Crystal's shard.lock files to a Nix file"; + license = licenses.mit; + maintainers = with maintainers; [ manveru peterhoeg ]; + }; +} diff --git a/nixpkgs/pkgs/development/compilers/crystal2nix/shards.nix b/nixpkgs/pkgs/development/compilers/crystal2nix/shards.nix new file mode 100644 index 000000000000..728aefb80502 --- /dev/null +++ b/nixpkgs/pkgs/development/compilers/crystal2nix/shards.nix @@ -0,0 +1,12 @@ +{ + spectator = { + url = "https://gitlab.com/arctic-fox/spectator.git"; + rev = "v0.10.5"; + sha256 = "1fgjz5vg59h4m25v4fjklimcdn62ngqbchm00kw1160ggjpgpzw2"; + }; + version_from_shard = { + url = "https://github.com/hugopl/version_from_shard.git"; + rev = "v1.2.5"; + sha256 = "0xizj0q4rd541rwjbx04cjifc2gfx4l5v6q2y7gmd0ndjmkgb8ik"; + }; +} |