nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 libX11,
6 libXcursor,
7 libXmu,
8 libXpm,
9 libheif,
10 pkg-config,
11 wayland,
12 xbitmaps,
13}:
14
15buildGoModule (finalAttrs: {
16 pname = "wallutils";
17 version = "5.14.3";
18
19 src = fetchFromGitHub {
20 owner = "xyproto";
21 repo = "wallutils";
22 tag = "v${finalAttrs.version}";
23 hash = "sha256-35JkZa7ihz0vgHwEagIkP7xTd6wLLRqSaeySJY1/Dw8=";
24 };
25
26 vendorHash = null;
27
28 patches = [
29 ./000-add-nixos-dirs-to-default-wallpapers.patch
30 ];
31
32 excludedPackages = [
33 "./pkg/event/cmd" # Development tools
34 ];
35
36 nativeBuildInputs = [
37 pkg-config
38 ];
39
40 buildInputs = [
41 libX11
42 libXcursor
43 libXmu
44 libXpm
45 libheif
46 wayland
47 xbitmaps
48 ];
49
50 ldflags = [
51 "-s"
52 "-w"
53 ];
54
55 preCheck = ''
56 export XDG_RUNTIME_DIR=$(mktemp -d)
57 '';
58
59 checkFlags =
60 let
61 skippedTests = [
62 "TestClosest" # Requiring Wayland or X
63 "TestEveryMinute" # Blocking
64 "TestNewSimpleEvent" # Blocking
65 ];
66 in
67 [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
68
69 meta = {
70 description = "Utilities for handling monitors, resolutions, and (timed) wallpapers";
71 inherit (finalAttrs.src.meta) homepage;
72 license = lib.licenses.bsd3;
73 maintainers = [ ];
74 inherit (wayland.meta) platforms;
75 badPlatforms = lib.platforms.darwin;
76 };
77})