diff options
Diffstat (limited to 'pkgs/development/misc')
-rw-r--r-- | pkgs/development/misc/haskell/changelog-d/changelog-d.nix | 30 | ||||
-rw-r--r-- | pkgs/development/misc/haskell/changelog-d/default.nix | 51 |
2 files changed, 81 insertions, 0 deletions
diff --git a/pkgs/development/misc/haskell/changelog-d/changelog-d.nix b/pkgs/development/misc/haskell/changelog-d/changelog-d.nix new file mode 100644 index 000000000000..7abc707540ce --- /dev/null +++ b/pkgs/development/misc/haskell/changelog-d/changelog-d.nix @@ -0,0 +1,30 @@ +{ mkDerivation, base, bytestring, cabal-install-parsers +, Cabal-syntax, containers, directory, fetchgit, filepath +, generic-lens-lite, lib, mtl, optparse-applicative, parsec, pretty +, regex-applicative +}: +mkDerivation { + pname = "changelog-d"; + version = "0.1"; + src = fetchgit { + url = "https://codeberg.org/fgaz/changelog-d"; + sha256 = "0r0gr3bl88am9jivic3i8lfi9l5v1dj7xx4fvw6hhy3wdx7z50z7"; + rev = "2816ddb78cec8b7fa4462c25028437ebfe3ad314"; + fetchSubmodules = true; + }; + isLibrary = false; + isExecutable = true; + libraryHaskellDepends = [ + base bytestring cabal-install-parsers Cabal-syntax containers + directory filepath generic-lens-lite mtl parsec pretty + regex-applicative + ]; + executableHaskellDepends = [ + base bytestring Cabal-syntax directory filepath + optparse-applicative + ]; + doHaddock = false; + description = "Concatenate changelog entries into a single one"; + license = lib.licenses.gpl3Plus; + mainProgram = "changelog-d"; +} diff --git a/pkgs/development/misc/haskell/changelog-d/default.nix b/pkgs/development/misc/haskell/changelog-d/default.nix new file mode 100644 index 000000000000..e4ba565808cf --- /dev/null +++ b/pkgs/development/misc/haskell/changelog-d/default.nix @@ -0,0 +1,51 @@ +{ callPackage +, lib +, pkgs +}: + +(callPackage ./changelog-d.nix { }).overrideAttrs (finalAttrs: oldAttrs: { + + version = oldAttrs.version + "-git-${lib.strings.substring 0 7 oldAttrs.src.rev}"; + + passthru.updateScript = lib.getExe (pkgs.writeShellApplication { + name = "update-changelog-d"; + runtimeInputs = [ + pkgs.cabal2nix + ]; + text = '' + cd pkgs/development/misc/haskell/changelog-d + cabal2nix https://codeberg.org/fgaz/changelog-d >changelog-d.nix + ''; + }); + passthru.tests = { + basic = pkgs.runCommand "changelog-d-basic-test" { + nativeBuildInputs = [ finalAttrs.finalPackage ]; + } '' + mkdir changelogs + cat > changelogs/config <<EOF + organization: NixOS + repository: boondoggle + EOF + cat > changelogs/a <<EOF + synopsis: Support numbers with incrementing base-10 digits + issues: #1234 + description: { + This didn't work before. + } + EOF + changelog-d changelogs >$out + cat -n $out + echo Checking the generated output + set -x + grep -F 'Support numbers with incrementing base-10 digits' $out >/dev/null + grep -F 'https://github.com/NixOS/boondoggle/issues/1234' $out >/dev/null + set +x + ''; + }; + + meta = oldAttrs.meta // { + homepage = "https://codeberg.org/fgaz/changelog-d"; + maintainers = [ lib.maintainers.roberth ]; + }; + +}) |