diff --git a/pkgs/applications/office/hledger-check-fancyassertions/default.nix b/pkgs/applications/office/hledger-check-fancyassertions/default.nix new file mode 100644 index 000000000000..ed38bc29fa18 --- /dev/null +++ b/pkgs/applications/office/hledger-check-fancyassertions/default.nix @@ -0,0 +1,41 @@ +{lib, stdenvNoCC, haskellPackages, fetchurl, writers}: + +stdenvNoCC.mkDerivation rec { + pname = "hledger-check-fancyassertions"; + version = "1.23"; + + src = fetchurl { + url = "https://raw.githubusercontent.com/simonmichael/hledger/hledger-lib-${version}/bin/hledger-check-fancyassertions.hs"; + sha256 = "08p2din1j7l4c29ipn68k8vvs3ys004iy8a3zf318lzby4h04h0n"; + }; + + dontUnpack = true; + dontBuild = true; + + executable = writers.writeHaskell + "hledger-check-fancyassertions" + { + libraries = with haskellPackages; [ + base base-compat base-compat-batteries filepath hledger-lib_1_23 + megaparsec microlens optparse-applicative string-qq text time + transformers + ]; + inherit (haskellPackages) ghc; + } + src; + + installPhase = '' + runHook preInstall + install -D $executable $out/bin/${pname} + runHook postInstall + ''; + + meta = with lib; { + description = "Complex account balance assertions for hledger journals"; + homepage = "https://hledger.org/"; + changelog = "https://github.com/simonmichael/hledger/blob/master/CHANGES.md"; + license = licenses.gpl3; + maintainers = [ maintainers.DamienCassou ]; + platforms = lib.platforms.all; # GHC can cross-compile + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 47fc545b37ea..7b116cfc6fdc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25003,6 +25003,7 @@ with pkgs; hivelytracker = callPackage ../applications/audio/hivelytracker { }; hledger = haskell.lib.justStaticExecutables haskellPackages.hledger; + hledger-check-fancyassertions = callPackage ../applications/office/hledger-check-fancyassertions { }; hledger-iadd = haskell.lib.justStaticExecutables haskellPackages.hledger-iadd; hledger-interest = haskell.lib.justStaticExecutables haskellPackages.hledger-interest; hledger-ui = haskell.lib.justStaticExecutables haskellPackages.hledger-ui; diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix index 566a1addd7aa..0d7ef5628ee4 100644 --- a/pkgs/top-level/release-haskell.nix +++ b/pkgs/top-level/release-haskell.nix @@ -175,6 +175,7 @@ let hinit hedgewars hledger + hledger-check-fancyassertions hledger-iadd hledger-interest hledger-ui