nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenvNoCC,
4 fetchFromGitHub,
5 makeWrapper,
6 scdoc,
7 coreutils,
8 grim,
9 hyprland,
10 hyprpicker,
11 jq,
12 libnotify,
13 slurp,
14 wl-clipboard,
15 unixtools,
16 bash,
17 nix-update-script,
18}:
19
20stdenvNoCC.mkDerivation (finalAttrs: {
21 pname = "grimblast";
22 version = "0.1-unstable-2026-01-14";
23
24 src = fetchFromGitHub {
25 owner = "hyprwm";
26 repo = "contrib";
27 rev = "541628cebe42792ddf5063c4abd6402c2f1bd68f";
28 hash = "sha256-CopNx3j//gZ2mE0ggEK9dZ474UcbDhpTw+KMor8mSxI=";
29 };
30
31 strictDeps = true;
32
33 nativeBuildInputs = [
34 makeWrapper
35 scdoc
36 ];
37
38 buildInputs = [ bash ];
39
40 makeFlags = [
41 "PREFIX=$(out)"
42 ];
43
44 sourceRoot = "${finalAttrs.src.name}/grimblast";
45
46 postInstall = ''
47 wrapProgram $out/bin/grimblast --prefix PATH ':' \
48 "${
49 lib.makeBinPath [
50 coreutils
51 grim
52 hyprland
53 hyprpicker
54 jq
55 libnotify
56 slurp
57 wl-clipboard
58 unixtools.getopt
59 ]
60 }"
61 '';
62
63 passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
64
65 meta = {
66 description = "Helper for screenshots within Hyprland, based on grimshot";
67 license = lib.licenses.mit;
68 platforms = lib.platforms.unix;
69 teams = [ lib.teams.hyprland ];
70 mainProgram = "grimblast";
71 };
72})