summary refs log tree commit diff
path: root/pkgs/data/icons/paper-icon-theme/default.nix
blob: fc541f6e5b72234c78a0d2e3d9b0488387daa8a0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
{ lib, stdenv, fetchFromGitHub, meson, ninja, gtk3, gnome, gnome-icon-theme, hicolor-icon-theme, jdupes }:

stdenv.mkDerivation rec {
  pname = "paper-icon-theme";
  version = "unstable-2020-03-12";

  src = fetchFromGitHub {
    owner = "snwh";
    repo = pname;
    rev = "aa3e8af7a1f0831a51fd7e638a4acb077a1e5188";
    sha256 = "0x6qzch4rrc8firb1dcf926j93gpqxvd7h6dj5wwczxbvxi5bd77";
  };

  nativeBuildInputs = [
    meson
    ninja
    gtk3
    jdupes
  ];

  propagatedBuildInputs = [
    gnome.adwaita-icon-theme
    gnome-icon-theme
    hicolor-icon-theme
  ];

  dontDropIconThemeCache = true;

  # These fixup steps are slow and unnecessary for this package
  dontPatchELF = true;
  dontRewriteSymlinks = true;

  postInstall = ''
    # The cache for Paper-Mono-Dark is missing
    gtk-update-icon-cache "$out"/share/icons/Paper-Mono-Dark;

    # replace duplicate files with symlinks
    jdupes -l -r $out/share/icons
  '';

  meta = with lib; {
    description = "Modern icon theme designed around bold colours and simple geometric shapes";
    homepage = "https://snwh.org/paper";
    license = with licenses; [ cc-by-sa-40 lgpl3 ];
    # darwin cannot deal with file names differing only in case
    platforms = platforms.linux;
    maintainers = with maintainers; [ romildo ];
  };
}