chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / gl / glycin-loaders / package.nix
blob7804acd778f75e6d58f972a81277ba5c98eabfc4
1 { stdenv
2 , lib
3 , fetchurl
4 , substituteAll
5 , bubblewrap
6 , cargo
7 , git
8 , meson
9 , ninja
10 , pkg-config
11 , rustc
12 , rustPlatform
13 , gtk4
14 , cairo
15 , libheif
16 , libxml2
17 , libseccomp
18 , libjxl
19 , gnome
22 stdenv.mkDerivation (finalAttrs: {
23   pname = "glycin-loaders";
24   version = "1.0.1";
26   src = fetchurl {
27     url = "mirror://gnome/sources/glycin-loaders/${lib.versions.majorMinor finalAttrs.version}/glycin-loaders-${finalAttrs.version}.tar.xz";
28     hash = "sha256-0PAiRi/1VYVuheqUBHRHC7NrN8n/y8umOgP+XpVDcM8=";
29   };
31   patches = [
32     # Fix paths in glycin library.
33     # Not actually needed for this package since we are only building loaders
34     # and this patch is relevant just to apps that use the loaders
35     # but apply it here to ensure the patch continues to apply.
36     finalAttrs.passthru.glycinPathsPatch
37   ];
39   nativeBuildInputs = [
40     cargo
41     git
42     meson
43     ninja
44     pkg-config
45     rustc
46     rustPlatform.bindgenHook # for libheif-sys
47   ];
49   buildInputs = [
50     gtk4 # for GdkTexture
51     cairo
52     libheif
53     libxml2 # for librsvg crate
54     libseccomp
55     libjxl
56   ];
58   passthru = {
59     updateScript = gnome.updateScript {
60       packageName = "glycin-loaders";
61     };
63     glycinPathsPatch = substituteAll {
64       src = ./fix-glycin-paths.patch;
65       bwrap = "${bubblewrap}/bin/bwrap";
66     };
67   };
69   meta = with lib; {
70     description = "Glycin loaders for several formats";
71     homepage = "https://gitlab.gnome.org/sophie-h/glycin";
72     maintainers = teams.gnome.members;
73     license = with licenses; [ mpl20 /* or */ lgpl21Plus ];
74     platforms = platforms.linux;
75   };