diff --git a/pkgs/development/tools/json2hcl/default.nix b/pkgs/development/tools/json2hcl/default.nix new file mode 100644 index 00000000000..cddf6054d48 --- /dev/null +++ b/pkgs/development/tools/json2hcl/default.nix @@ -0,0 +1,24 @@ +{ stdenv, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + pname = "json2hcl"; + name = "${pname}-${version}"; + version = "0.0.6"; + + src = fetchFromGitHub { + inherit owner; + repo = pname; + rev = "v${version}"; + sha256 = "0knil88n2w41w3nzqz6ljgfjkl5r3x0bh7ifqgiyf6sin3pl4pn0"; + }; + + owner = "kvz"; + goPackagePath = "github.com/${owner}/${pname}"; + goDeps = ./deps.nix; + + meta = with stdenv.lib; { + description = "Convert JSON to HCL, and vice versa"; + license = with licenses; [ mit ]; + maintainers = [ maintainers.matthewbauer ]; + }; +} diff --git a/pkgs/development/tools/json2hcl/deps.nix b/pkgs/development/tools/json2hcl/deps.nix new file mode 100644 index 00000000000..bb9df28ad87 --- /dev/null +++ b/pkgs/development/tools/json2hcl/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/Acconut/hcl"; + fetch = { + type = "git"; + url = "https://github.com/Acconut/hcl"; + rev = "23c074d0eceb2b8a5bfdbb271ab780cde70f05a8"; + sha256 = "0db4lpqb5m130rmfy3s3gjjf4dxllypmyrzxv6ggqhkmwmc7w4mc"; + }; + } + { + goPackagePath = "github.com/hashicorp/hcl"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/hcl"; + rev = "23c074d0eceb2b8a5bfdbb271ab780cde70f05a8"; + sha256 = "0db4lpqb5m130rmfy3s3gjjf4dxllypmyrzxv6ggqhkmwmc7w4mc"; + }; + } +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 43f6255aa16..18bfc58e988 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9359,6 +9359,8 @@ with pkgs; jshon = callPackage ../development/tools/parsing/jshon { }; + json2hcl = callPackage ../development/tools/json2hcl { }; + json-glib = callPackage ../development/libraries/json-glib { }; json-c-0-11 = callPackage ../development/libraries/json-c/0.11.nix { }; # vulnerable