From 054f67065e41950264f972bad2ab90645386f224 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 31 Oct 2023 18:01:14 +0100 Subject: [PATCH] haskellPackages.changelog-d: init --- .../haskell-modules/non-hackage-packages.nix | 3 ++ .../misc/haskell/changelog-d/changelog-d.nix | 30 +++++++++++++++++++ .../misc/haskell/changelog-d/default.nix | 26 ++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100644 pkgs/development/misc/haskell/changelog-d/changelog-d.nix create mode 100644 pkgs/development/misc/haskell/changelog-d/default.nix diff --git a/pkgs/development/haskell-modules/non-hackage-packages.nix b/pkgs/development/haskell-modules/non-hackage-packages.nix index fa0446148b46..f78e333ae1d7 100644 --- a/pkgs/development/haskell-modules/non-hackage-packages.nix +++ b/pkgs/development/haskell-modules/non-hackage-packages.nix @@ -7,6 +7,8 @@ # files. self: super: { + changelog-d = self.callPackage ../misc/haskell/changelog-d {}; + dconf2nix = self.callPackage ../tools/haskell/dconf2nix/dconf2nix.nix { }; # Used by maintainers/scripts/regenerate-hackage-packages.sh, and generated @@ -36,4 +38,5 @@ self: super: { # Unofficial fork until PRs are merged https://github.com/pcapriotti/optparse-applicative/pulls/roberth # cabal2nix --maintainer roberth https://github.com/hercules-ci/optparse-applicative.git > pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix hercules-ci-optparse-applicative = self.callPackage ../misc/haskell/hercules-ci-optparse-applicative.nix {}; + } 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..ffdeb843b3fd --- /dev/null +++ b/pkgs/development/misc/haskell/changelog-d/default.nix @@ -0,0 +1,26 @@ +{ callPackage +, lib +, pkgs +}: + +(callPackage ./changelog-d.nix { }).overrideAttrs (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 + ''; + }); + + meta = oldAttrs.meta // { + homepage = "https://codeberg.org/fgaz/changelog-d"; + maintainers = [ lib.maintainers.roberth ]; + }; + +})