diff --git a/pkgs/applications/misc/darkman/default.nix b/pkgs/applications/misc/darkman/default.nix new file mode 100644 index 00000000000..a6c32d2ba89 --- /dev/null +++ b/pkgs/applications/misc/darkman/default.nix @@ -0,0 +1,49 @@ +{ lib, fetchFromGitLab, buildGoModule, scdoc, nix-update-script }: + +buildGoModule rec { + pname = "darkman"; + version = "1.3.1"; + + src = fetchFromGitLab { + owner = "WhyNotHugo"; + repo = "darkman"; + rev = "v${version}"; + sha256 = "09iwc9cwwc88c6yrf6a552nbsnf1w8cnlra9axsar2p0k21v5yl1"; + }; + + vendorSha256 = "09rjqw6v1jaf0mhmycw9mcay9q0y1fya2azj8216gdgkl48ics08"; + + nativeBuildInputs = [ scdoc ]; + + postPatch = '' + substituteInPlace darkman.service \ + --replace "/usr/bin/darkman" "$out/bin/darkman" + substituteInPlace contrib/dbus/nl.whynothugo.darkman.service \ + --replace "/usr/bin/darkman" "$out/bin/darkman" + substituteInPlace contrib/dbus/org.freedesktop.impl.portal.desktop.darkman.service \ + --replace "/usr/bin/darkman" "$out/bin/darkman" + ''; + + buildPhase = '' + runHook preBuild + make build + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + make PREFIX=$out install + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { + attrPath = pname; + }; + + meta = with lib; { + description = "Framework for dark-mode and light-mode transitions on Linux desktop"; + homepage = "https://gitlab.com/WhyNotHugo/darkman"; + license = licenses.isc; + maintainers = [ maintainers.ajgrf ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7c60683d5eb..b65c1b12fa6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -26758,6 +26758,8 @@ with pkgs; darcs-to-git = callPackage ../applications/version-management/git-and-tools/darcs-to-git { }; + darkman = callPackage ../applications/misc/darkman { }; + darktable = callPackage ../applications/graphics/darktable { lua = lua5_4; pugixml = pugixml.override { shared = true; };