Merge #257301: cairo: 1.16.0 -> 1.18.0

...into staging

+111 -130
+2
pkgs/applications/audio/industrializer/default.nix
··· 6 , automake 7 , gnome2 8 , gtk2 9 , libjack2 10 , libtool 11 , libxml2 ··· 27 audiofile 28 gnome2.gtkglext 29 gtk2 30 libjack2 31 libtool 32 libxml2
··· 6 , automake 7 , gnome2 8 , gtk2 9 + , libGL 10 , libjack2 11 , libtool 12 , libxml2 ··· 28 audiofile 29 gnome2.gtkglext 30 gtk2 31 + libGL 32 libjack2 33 libtool 34 libxml2
+2 -1
pkgs/applications/audio/kapitonov-plugins-pack/default.nix
··· 1 { lib, stdenv, fetchFromGitHub, faust, meson, ninja, pkg-config 2 - , boost, cairo, fftw, ladspa-sdk, libxcb, lv2, xcbutilwm 3 , zita-convolver, zita-resampler 4 }: 5 ··· 29 libxcb 30 lv2 31 xcbutilwm 32 zita-convolver 33 zita-resampler 34 ];
··· 1 { lib, stdenv, fetchFromGitHub, faust, meson, ninja, pkg-config 2 + , boost, cairo, fftw, ladspa-sdk, libxcb, lv2, xcbutilwm, xorg 3 , zita-convolver, zita-resampler 4 }: 5 ··· 29 libxcb 30 lv2 31 xcbutilwm 32 + xorg.xcbutil 33 zita-convolver 34 zita-resampler 35 ];
+2 -2
pkgs/applications/audio/stone-phaser/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, xorg, cairo, lv2, libjack2, mesa, pkg-config }: 2 3 stdenv.mkDerivation rec { 4 pname = "stone-phaser"; ··· 14 15 nativeBuildInputs = [ pkg-config ]; 16 buildInputs = [ 17 - xorg.libX11 cairo lv2 libjack2 mesa 18 ]; 19 20 postPatch = ''
··· 1 + { lib, stdenv, fetchFromGitHub, xorg, cairo, libGL, lv2, libjack2, mesa, pkg-config }: 2 3 stdenv.mkDerivation rec { 4 pname = "stone-phaser"; ··· 14 15 nativeBuildInputs = [ pkg-config ]; 16 buildInputs = [ 17 + xorg.libX11 cairo libGL lv2 libjack2 mesa 18 ]; 19 20 postPatch = ''
+2 -2
pkgs/applications/audio/string-machine/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, boost, cairo, lv2, pkg-config }: 2 3 stdenv.mkDerivation rec { 4 pname = "string-machine"; ··· 19 nativeBuildInputs = [ pkg-config ]; 20 21 buildInputs = [ 22 - boost cairo lv2 23 ]; 24 25 makeFlags = [
··· 1 + { lib, stdenv, fetchFromGitHub, boost, cairo, libGL, lv2, pkg-config }: 2 3 stdenv.mkDerivation rec { 4 pname = "string-machine"; ··· 19 nativeBuildInputs = [ pkg-config ]; 20 21 buildInputs = [ 22 + boost cairo libGL lv2 23 ]; 24 25 makeFlags = [
+4
pkgs/applications/graphics/fbida/default.nix
··· 1 { lib 2 , stdenv 3 , fetchurl 4 , libjpeg 5 , libexif 6 , giflib ··· 17 , sane-backends 18 , libXpm 19 , libepoxy 20 , poppler 21 , mesa 22 , lirc ··· 42 43 nativeBuildInputs = [ pkg-config which ]; 44 buildInputs = [ 45 libexif 46 libjpeg 47 libpng ··· 56 libdrm 57 libXpm 58 libepoxy 59 poppler 60 lirc 61 mesa
··· 1 { lib 2 , stdenv 3 , fetchurl 4 + , libGL 5 , libjpeg 6 , libexif 7 , giflib ··· 18 , sane-backends 19 , libXpm 20 , libepoxy 21 + , pixman 22 , poppler 23 , mesa 24 , lirc ··· 44 45 nativeBuildInputs = [ pkg-config which ]; 46 buildInputs = [ 47 + libGL 48 libexif 49 libjpeg 50 libpng ··· 59 libdrm 60 libXpm 61 libepoxy 62 + pixman 63 poppler 64 lirc 65 mesa
+2
pkgs/applications/misc/mission-center/default.nix
··· 23 , glib 24 , graphene 25 , gtk4 26 , libadwaita 27 , libdrm 28 , mesa ··· 92 glib 93 graphene 94 gtk4 95 libadwaita 96 libdrm 97 mesa
··· 23 , glib 24 , graphene 25 , gtk4 26 + , libGL 27 , libadwaita 28 , libdrm 29 , mesa ··· 93 glib 94 graphene 95 gtk4 96 + libGL 97 libadwaita 98 libdrm 99 mesa
+2 -2
pkgs/applications/science/chemistry/gwyddion/default.nix
··· 12 zlibSupport ? true, zlib, 13 libuniqueSupport ? true, libunique, 14 libpngSupport ? true, libpng, 15 - openglSupport ? !stdenv.isDarwin 16 }: 17 18 let ··· 31 32 buildInputs = with lib; 33 [ gtk2 fftw ] ++ 34 - optional openglSupport gnome2.gtkglext ++ 35 optional openexrSupport openexr ++ 36 optional libXmuSupport xorg.libXmu ++ 37 optional fitsSupport cfitsio ++
··· 12 zlibSupport ? true, zlib, 13 libuniqueSupport ? true, libunique, 14 libpngSupport ? true, libpng, 15 + openglSupport ? !stdenv.isDarwin, libGL 16 }: 17 18 let ··· 31 32 buildInputs = with lib; 33 [ gtk2 fftw ] ++ 34 + optionals openglSupport [ gnome2.gtkglext libGL ] ++ 35 optional openexrSupport openexr ++ 36 optional libXmuSupport xorg.libXmu ++ 37 optional fitsSupport cfitsio ++
+2
pkgs/applications/video/clapper/default.nix
··· 17 , gjs 18 , gtk4 19 , gst_all_1 20 , libadwaita 21 , appstream-glib 22 , libsoup ··· 55 gst_all_1.gst-plugins-bad 56 gst_all_1.gst-plugins-ugly 57 gtk4 58 libadwaita 59 libsoup 60 wayland
··· 17 , gjs 18 , gtk4 19 , gst_all_1 20 + , libGL 21 , libadwaita 22 , appstream-glib 23 , libsoup ··· 56 gst_all_1.gst-plugins-bad 57 gst_all_1.gst-plugins-ugly 58 gtk4 59 + libGL 60 libadwaita 61 libsoup 62 wayland
+2
pkgs/applications/window-managers/hyprwm/hyprland/default.nix
··· 10 , git 11 , hyprland-protocols 12 , jq 13 , libdrm 14 , libexecinfo 15 , libinput ··· 82 cairo 83 git 84 hyprland-protocols 85 libdrm 86 libinput 87 libxkbcommon
··· 10 , git 11 , hyprland-protocols 12 , jq 13 + , libGL 14 , libdrm 15 , libexecinfo 16 , libinput ··· 83 cairo 84 git 85 hyprland-protocols 86 + libGL 87 libdrm 88 libinput 89 libxkbcommon
+2
pkgs/applications/window-managers/hyprwm/hyprpaper/default.nix
··· 3 , fetchFromGitHub 4 , cmake 5 , file 6 , libjpeg 7 , mesa 8 , pango ··· 31 32 buildInputs = [ 33 file 34 libjpeg 35 mesa 36 pango
··· 3 , fetchFromGitHub 4 , cmake 5 , file 6 + , libGL 7 , libjpeg 8 , mesa 9 , pango ··· 32 33 buildInputs = [ 34 file 35 + libGL 36 libjpeg 37 mesa 38 pango
+2
pkgs/applications/window-managers/hyprwm/hyprpicker/default.nix
··· 6 , ninja 7 , cairo 8 , fribidi 9 , libdatrie 10 , libjpeg 11 , libselinux ··· 43 buildInputs = [ 44 cairo 45 fribidi 46 libdatrie 47 libjpeg 48 libselinux
··· 6 , ninja 7 , cairo 8 , fribidi 9 + , libGL 10 , libdatrie 11 , libjpeg 12 , libselinux ··· 44 buildInputs = [ 45 cairo 46 fribidi 47 + libGL 48 libdatrie 49 libjpeg 50 libselinux
+3 -1
pkgs/applications/window-managers/i3/lock-blur.nix
··· 1 - { i3lock-color, lib, stdenv, fetchFromGitHub, fetchpatch }: 2 3 i3lock-color.overrideAttrs (oldAttrs : rec { 4 pname = "i3lock-blur"; ··· 20 sha256 = "sha256-0hXUr+ZEB1tpI3xw80/hGzKyeGuna4CQmEvK6t0VBqU="; 21 }) 22 ]; 23 24 meta = with lib; { 25 description = "An improved screenlocker based upon XCB and PAM with background blurring filter";
··· 1 + { i3lock-color, lib, stdenv, fetchFromGitHub, fetchpatch, libGL }: 2 3 i3lock-color.overrideAttrs (oldAttrs : rec { 4 pname = "i3lock-blur"; ··· 20 sha256 = "sha256-0hXUr+ZEB1tpI3xw80/hGzKyeGuna4CQmEvK6t0VBqU="; 21 }) 22 ]; 23 + 24 + buildInputs = oldAttrs.buildInputs ++ [ libGL ]; 25 26 meta = with lib; { 27 description = "An improved screenlocker based upon XCB and PAM with background blurring filter";
+2 -2
pkgs/applications/window-managers/i3/lock-color.nix
··· 1 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libxcb, 2 xcbutilkeysyms , xcbutilimage, pam, libX11, libev, cairo, libxkbcommon, 3 - libxkbfile, libjpeg_turbo, xcbutilxrm 4 }: 5 6 stdenv.mkDerivation rec { ··· 16 17 nativeBuildInputs = [ autoreconfHook pkg-config ]; 18 buildInputs = [ libxcb xcbutilkeysyms xcbutilimage pam libX11 19 - libev cairo libxkbcommon libxkbfile libjpeg_turbo xcbutilxrm ]; 20 21 makeFlags = [ "all" ]; 22 preInstall = ''
··· 1 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libxcb, 2 xcbutilkeysyms , xcbutilimage, pam, libX11, libev, cairo, libxkbcommon, 3 + libxkbfile, libjpeg_turbo, xcbutilxrm, xorg 4 }: 5 6 stdenv.mkDerivation rec { ··· 16 17 nativeBuildInputs = [ autoreconfHook pkg-config ]; 18 buildInputs = [ libxcb xcbutilkeysyms xcbutilimage pam libX11 19 + libev cairo libxkbcommon libxkbfile libjpeg_turbo xcbutilxrm xorg.xcbutil ]; 20 21 makeFlags = [ "all" ]; 22 preInstall = ''
+2 -2
pkgs/applications/window-managers/i3/lock.nix
··· 1 { stdenv, lib, fetchFromGitHub, meson, ninja, pkg-config, libxcb, xcbutilkeysyms, xcbutilimage, 2 - xcbutilxrm, pam, libX11, libev, cairo, libxkbcommon, libxkbfile }: 3 4 stdenv.mkDerivation rec { 5 pname = "i3lock"; ··· 14 15 nativeBuildInputs = [ meson ninja pkg-config ]; 16 buildInputs = [ libxcb xcbutilkeysyms xcbutilimage xcbutilxrm 17 - pam libX11 libev cairo libxkbcommon libxkbfile ]; 18 19 meta = with lib; { 20 description = "A simple screen locker like slock";
··· 1 { stdenv, lib, fetchFromGitHub, meson, ninja, pkg-config, libxcb, xcbutilkeysyms, xcbutilimage, 2 + xcbutilxrm, pam, libX11, libev, cairo, libxkbcommon, libxkbfile, xorg }: 3 4 stdenv.mkDerivation rec { 5 pname = "i3lock"; ··· 14 15 nativeBuildInputs = [ meson ninja pkg-config ]; 16 buildInputs = [ libxcb xcbutilkeysyms xcbutilimage xcbutilxrm 17 + pam libX11 libev cairo libxkbcommon libxkbfile xorg.xcbutil ]; 18 19 meta = with lib; { 20 description = "A simple screen locker like slock";
+2 -2
pkgs/applications/window-managers/i3/wmfocus.nix
··· 1 { lib, fetchFromGitHub, rustPlatform 2 - , xorg, python3, pkg-config, cairo, libxkbcommon }: 3 4 rustPlatform.buildRustPackage rec { 5 pname = "wmfocus"; ··· 15 cargoHash = "sha256-4eoV/viI7Q7I7mIqcHVAyPf/y2RWaWX0B+mLZWMEbcI="; 16 17 nativeBuildInputs = [ python3 pkg-config ]; 18 - buildInputs = [ cairo libxkbcommon xorg.xcbutilkeysyms ]; 19 20 # For now, this is the only available featureset. This is also why the file is 21 # in the i3 folder, even though it might be useful for more than just i3
··· 1 { lib, fetchFromGitHub, rustPlatform 2 + , xorg, python3, pkg-config, cairo, expat, libxkbcommon }: 3 4 rustPlatform.buildRustPackage rec { 5 pname = "wmfocus"; ··· 15 cargoHash = "sha256-4eoV/viI7Q7I7mIqcHVAyPf/y2RWaWX0B+mLZWMEbcI="; 16 17 nativeBuildInputs = [ python3 pkg-config ]; 18 + buildInputs = [ cairo expat libxkbcommon xorg.xcbutilkeysyms ]; 19 20 # For now, this is the only available featureset. This is also why the file is 21 # in the i3 folder, even though it might be useful for more than just i3
+2
pkgs/applications/window-managers/jay/default.nix
··· 1 { lib 2 , rustPlatform 3 , fetchFromGitHub 4 , libinput 5 , libxkbcommon 6 , mesa ··· 22 cargoSha256 = "sha256-zSq6YBlm6gJXGlF9xZ8gWSTMewdNqrJzwP58a0x8QIU="; 23 24 buildInputs = [ 25 libxkbcommon 26 mesa 27 pango
··· 1 { lib 2 , rustPlatform 3 , fetchFromGitHub 4 + , libGL 5 , libinput 6 , libxkbcommon 7 , mesa ··· 23 cargoSha256 = "sha256-zSq6YBlm6gJXGlF9xZ8gWSTMewdNqrJzwP58a0x8QIU="; 24 25 buildInputs = [ 26 + libGL 27 libxkbcommon 28 mesa 29 pango
+2 -2
pkgs/applications/window-managers/sway/default.nix
··· 1 { lib, stdenv, fetchFromGitHub, fetchpatch, substituteAll, swaybg 2 , meson, ninja, pkg-config, wayland-scanner, scdoc 3 - , wayland, libxkbcommon, pcre2, json_c, libevdev 4 , pango, cairo, libinput, gdk-pixbuf, librsvg 5 , wlroots, wayland-protocols, libdrm 6 , nixosTests ··· 58 ]; 59 60 buildInputs = [ 61 - wayland libxkbcommon pcre2 json_c libevdev 62 pango cairo libinput gdk-pixbuf librsvg 63 wayland-protocols libdrm 64 (wlroots.override { inherit (finalAttrs) enableXWayland; })
··· 1 { lib, stdenv, fetchFromGitHub, fetchpatch, substituteAll, swaybg 2 , meson, ninja, pkg-config, wayland-scanner, scdoc 3 + , libGL, wayland, libxkbcommon, pcre2, json_c, libevdev 4 , pango, cairo, libinput, gdk-pixbuf, librsvg 5 , wlroots, wayland-protocols, libdrm 6 , nixosTests ··· 58 ]; 59 60 buildInputs = [ 61 + libGL wayland libxkbcommon pcre2 json_c libevdev 62 pango cairo libinput gdk-pixbuf librsvg 63 wayland-protocols libdrm 64 (wlroots.override { inherit (finalAttrs) enableXWayland; })
+2
pkgs/applications/window-managers/wayfire/default.nix
··· 8 , wf-config 9 , cairo 10 , doctest 11 , libdrm 12 , libexecinfo 13 , libevdev ··· 44 45 buildInputs = [ 46 wf-config 47 libdrm 48 libexecinfo 49 libevdev
··· 8 , wf-config 9 , cairo 10 , doctest 11 + , libGL 12 , libdrm 13 , libexecinfo 14 , libevdev ··· 45 46 buildInputs = [ 47 wf-config 48 + libGL 49 libdrm 50 libexecinfo 51 libevdev
+2 -2
pkgs/applications/window-managers/weston/default.nix
··· 1 { lib, stdenv, fetchurl, fetchpatch2 2 , meson, ninja, pkg-config, python3, wayland-scanner 3 - , cairo, libdrm, libevdev, libinput, libxkbcommon, mesa, seatd, wayland 4 , wayland-protocols, xcbutilcursor 5 6 , demoSupport ? true ··· 39 depsBuildBuild = [ pkg-config ]; 40 nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ]; 41 buildInputs = [ 42 - cairo libdrm libevdev libinput libxkbcommon mesa seatd wayland 43 wayland-protocols 44 ] ++ lib.optional hdrSupport libdisplay-info 45 ++ lib.optional jpegSupport libjpeg
··· 1 { lib, stdenv, fetchurl, fetchpatch2 2 , meson, ninja, pkg-config, python3, wayland-scanner 3 + , cairo, libGL, libdrm, libevdev, libinput, libxkbcommon, mesa, seatd, wayland 4 , wayland-protocols, xcbutilcursor 5 6 , demoSupport ? true ··· 39 depsBuildBuild = [ pkg-config ]; 40 nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ]; 41 buildInputs = [ 42 + cairo libGL libdrm libevdev libinput libxkbcommon mesa seatd wayland 43 wayland-protocols 44 ] ++ lib.optional hdrSupport libdisplay-info 45 ++ lib.optional jpegSupport libjpeg
+2
pkgs/by-name/ce/celluloid/package.nix
··· 5 , desktop-file-utils 6 , glib 7 , gtk4 8 , libepoxy 9 , libadwaita 10 , meson ··· 40 buildInputs = [ 41 glib 42 gtk4 43 libadwaita 44 libepoxy 45 mpv
··· 5 , desktop-file-utils 6 , glib 7 , gtk4 8 + , libGL 9 , libepoxy 10 , libadwaita 11 , meson ··· 41 buildInputs = [ 42 glib 43 gtk4 44 + libGL 45 libadwaita 46 libepoxy 47 mpv
+3 -2
pkgs/development/compilers/squeak/default.nix
··· 1 { lib, stdenv, fetchFromGitHub, fetchurl, fetchzip 2 , autoconf, automake, autoreconfHook, clang, dos2unix, file, perl 3 , pkg-config 4 - , alsa-lib, coreutils, freetype, glib, glibc, gnugrep, libpulseaudio, libtool 5 - , libuuid, openssl, pango, xorg 6 , squeakImageHash ? null, squeakSourcesHash ? null, squeakSourcesVersion ? null 7 , squeakVersion ? null, squeakVmCommitHash ? null, squeakVmCommitHashHash ? null 8 , squeakVmVersion ? null ··· 88 glib 89 glibc 90 gnugrep 91 libpulseaudio 92 libtool 93 libuuid
··· 1 { lib, stdenv, fetchFromGitHub, fetchurl, fetchzip 2 , autoconf, automake, autoreconfHook, clang, dos2unix, file, perl 3 , pkg-config 4 + , alsa-lib, coreutils, freetype, glib, glibc, gnugrep, libGL, libpulseaudio 5 + , libtool, libuuid, openssl, pango, xorg 6 , squeakImageHash ? null, squeakSourcesHash ? null, squeakSourcesVersion ? null 7 , squeakVersion ? null, squeakVmCommitHash ? null, squeakVmCommitHashHash ? null 8 , squeakVmVersion ? null ··· 88 glib 89 glibc 90 gnugrep 91 + libGL 92 libpulseaudio 93 libtool 94 libuuid
+52 -108
pkgs/development/libraries/cairo/default.nix
··· 1 - { config, lib, stdenv, fetchurl, fetchpatch, pkg-config, libiconv 2 - , libintl, expat, zlib, libpng, pixman, fontconfig, freetype 3 - , x11Support? !stdenv.isDarwin, libXext, libXrender 4 , gobjectSupport ? true, glib 5 - , xcbSupport ? x11Support, libxcb, xcbutil # no longer experimental since 1.12 6 - , libGLSupported ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms 7 - , glSupport ? x11Support && config.cairo.gl or (libGLSupported && stdenv.isLinux) 8 - , libGL # libGLU libGL is no longer a big dependency 9 - , pdfSupport ? true 10 , darwin 11 , testers 12 }: ··· 17 inherit (finalAttrs) pname version; 18 in { 19 pname = "cairo"; 20 - version = "1.16.0"; 21 22 src = fetchurl { 23 url = "https://cairographics.org/${if lib.mod (builtins.fromJSON (lib.versions.minor version)) 2 == 0 then "releases" else "snapshots"}/${pname}-${version}.tar.xz"; 24 - sha256 = "0c930mk5xr2bshbdljv005j3j8zr47gqmkry3q6qgvqky6rjjysy"; 25 }; 26 27 - patches = [ 28 - # Fixes CVE-2018-19876; see Nixpkgs issue #55384 29 - # CVE information: https://nvd.nist.gov/vuln/detail/CVE-2018-19876 30 - # Upstream PR: https://gitlab.freedesktop.org/cairo/cairo/merge_requests/5 31 - # 32 - # This patch is the merged commit from the above PR. 33 - (fetchpatch { 34 - name = "CVE-2018-19876.patch"; 35 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/6edf572ebb27b00d3c371ba5ae267e39d27d5b6d.patch"; 36 - hash = "sha256-wZ51BZWlXByFY3/CTn7el2A9aYkwL1FygJ2zqnN+UIQ="; 37 - }) 38 - 39 - # Fix PDF output. 40 - # https://gitlab.freedesktop.org/cairo/cairo/issues/342 41 - (fetchpatch { 42 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/5e34c5a9640e49dcc29e6b954c4187cfc838dbd1.patch"; 43 - hash = "sha256-yCwsDUY7efVvOZkA6a0bPS+RrVc8Yk9bfPwWHeOjq5o="; 44 - }) 45 - 46 - # Fixes CVE-2020-35492; see https://github.com/NixOS/nixpkgs/issues/120364. 47 - # CVE information: https://nvd.nist.gov/vuln/detail/CVE-2020-35492 48 - # Upstream PR: https://gitlab.freedesktop.org/cairo/cairo/merge_requests/85 49 - (fetchpatch { 50 - name = "CVE-2020-35492.patch"; 51 - includes = [ "src/cairo-image-compositor.c" ]; 52 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/78266cc8c0f7a595cfe8f3b694bfb9bcc3700b38.patch"; 53 - hash = "sha256-cXKzLMENx4/BHXLZg3Kfkx3esCnaNaB7WvjNfL77FhE="; 54 - }) 55 - 56 - # Workaround https://gitlab.freedesktop.org/cairo/cairo/-/issues/121 57 - ./skip-configure-stderr-check.patch 58 - 59 - # Fixes cairo crash on macOS Big Sur 60 - # Upstream PR: https://gitlab.freedesktop.org/cairo/cairo/-/issues/420 61 - (fetchpatch { 62 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/e22d7212acb454daccc088619ee147af03883974.diff"; 63 - hash = "sha256-8G98nsPz3MLEWPDX9F0jKgXC4hC4NNdFQLSpmW3ay2s="; 64 - }) 65 - 66 - # Fix clang build failures on newer LLVM versions 67 - # Upstream PR: https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/119 68 - (fetchpatch { 69 - name = "fix-types.patch"; 70 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/38e486b34d435130f2fb38c429e6016c3c82cd53.patch"; 71 - hash = "sha256-vmluOJSuTRiQHmbBBVCxOIkZ0O0ZEo0J4mgrUPn0SIo="; 72 - }) 73 - 74 - # Fix unexpected color addition on grayscale images (usually text). 75 - # Upstream fix: https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/114 76 - # Can be removed after 1.18 release 77 - (fetchpatch { 78 - name = "fix-grayscale-anialias.patch"; 79 - url = "https://gitlab.freedesktop.org/cairo/cairo/-/commit/4f4d89506f58a64b4829b1bb239bab9e46d63727.diff"; 80 - hash = "sha256-mbTg67e7APfdELsuMAgXdY3xokWbGtHF7VDD5UyYqKM="; 81 - }) 82 - 83 - ]; 84 - 85 outputs = [ "out" "dev" "devdoc" ]; 86 outputBin = "dev"; # very small 87 separateDebugInfo = true; 88 89 nativeBuildInputs = [ 90 pkg-config 91 ]; 92 93 buildInputs = [ 94 - libiconv 95 - libintl 96 ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ 97 CoreGraphics 98 CoreText ··· 100 Carbon 101 ]); 102 103 - propagatedBuildInputs = [ fontconfig expat freetype pixman zlib libpng ] 104 ++ optionals x11Support [ libXext libXrender ] 105 - ++ optionals xcbSupport [ libxcb xcbutil ] 106 ++ optional gobjectSupport glib 107 - ++ optional glSupport libGL 108 ; # TODO: maybe liblzo but what would it be for here? 109 110 - configureFlags = [ 111 - "--enable-tee" 112 - ] ++ (if stdenv.isDarwin then [ 113 - "--disable-dependency-tracking" 114 - "--enable-quartz" 115 - "--enable-quartz-font" 116 - "--enable-quartz-image" 117 - "--enable-ft" 118 - ] else (optional xcbSupport "--enable-xcb" 119 - ++ optional glSupport "--enable-gl" 120 - ++ optional pdfSupport "--enable-pdf" 121 - )) ++ optional (!x11Support) "--disable-xlib"; 122 123 - preConfigure = 124 - # On FreeBSD, `-ldl' doesn't exist. 125 - lib.optionalString stdenv.isFreeBSD 126 - '' for i in "util/"*"/Makefile.in" boilerplate/Makefile.in 127 - do 128 - cat "$i" | sed -es/-ldl//g > t 129 - mv t "$i" 130 - done 131 - '' 132 - + 133 - '' 134 - # Work around broken `Requires.private' that prevents Freetype 135 - # `-I' flags to be propagated. 136 - sed -i "src/cairo.pc.in" \ 137 - -es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype.dev}/include/freetype2 -I${freetype.dev}/include|g' 138 - substituteInPlace configure --replace strings $STRINGS 139 - ''; 140 141 enableParallelBuilding = true; 142 143 doCheck = false; # fails 144 145 - postInstall = lib.optionalString stdenv.isDarwin glib.flattenInclude; 146 147 passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; 148 ··· 151 longDescription = '' 152 Cairo is a 2D graphics library with support for multiple output 153 devices. Currently supported output targets include the X 154 - Window System, Quartz, Win32, image buffers, PostScript, PDF, 155 - and SVG file output. Experimental backends include OpenGL 156 - (through glitz), XCB, BeOS, OS/2, and DirectFB. 157 158 Cairo is designed to produce consistent output on all output 159 media while taking advantage of display hardware acceleration ··· 162 homepage = "http://cairographics.org/"; 163 license = with licenses; [ lgpl2Plus mpl10 ]; 164 pkgConfigModules = [ 165 "cairo-ps" 166 "cairo-svg" 167 - ] ++ lib.optional gobjectSupport "cairo-gobject" 168 - ++ lib.optional pdfSupport "cairo-pdf"; 169 platforms = platforms.all; 170 }; 171 })
··· 1 + { lib, stdenv, fetchurl, fetchpatch, gtk-doc, meson, ninja, pkg-config, python3 2 + , docbook_xsl, fontconfig, freetype, libpng, pixman, zlib 3 + , x11Support? !stdenv.isDarwin || true, libXext, libXrender 4 , gobjectSupport ? true, glib 5 + , xcbSupport ? x11Support, libxcb 6 , darwin 7 , testers 8 }: ··· 13 inherit (finalAttrs) pname version; 14 in { 15 pname = "cairo"; 16 + version = "1.18.0"; 17 18 src = fetchurl { 19 url = "https://cairographics.org/${if lib.mod (builtins.fromJSON (lib.versions.minor version)) 2 == 0 then "releases" else "snapshots"}/${pname}-${version}.tar.xz"; 20 + hash = "sha256-JDoHNrl4oz3uKfnMp1IXM7eKZbVBggb+970cPUzxC2Q="; 21 }; 22 23 outputs = [ "out" "dev" "devdoc" ]; 24 outputBin = "dev"; # very small 25 separateDebugInfo = true; 26 27 nativeBuildInputs = [ 28 + gtk-doc 29 + meson 30 + ninja 31 pkg-config 32 + python3 33 ]; 34 35 buildInputs = [ 36 + docbook_xsl 37 ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ 38 CoreGraphics 39 CoreText ··· 41 Carbon 42 ]); 43 44 + propagatedBuildInputs = [ fontconfig freetype pixman libpng zlib ] 45 ++ optionals x11Support [ libXext libXrender ] 46 + ++ optionals xcbSupport [ libxcb ] 47 ++ optional gobjectSupport glib 48 ; # TODO: maybe liblzo but what would it be for here? 49 50 + mesonFlags = [ 51 + "-Dgtk_doc=true" 52 53 + # error: #error config.h must be included before this header 54 + "-Dsymbol-lookup=disabled" 55 + 56 + # Only used in tests, causes a dependency cycle 57 + "-Dspectre=disabled" 58 + 59 + (lib.mesonEnable "glib" gobjectSupport) 60 + (lib.mesonEnable "tests" finalAttrs.doCheck) 61 + (lib.mesonEnable "xlib" x11Support) 62 + (lib.mesonEnable "xcb" xcbSupport) 63 + # ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ 64 + # "--cross-file=${builtins.toFile "cross-file.conf" '' 65 + # [properties] 66 + # ipc_rmid_deferred_release = ${ 67 + # { 68 + # linux = "true"; 69 + # freebsd = "true"; 70 + # netbsd = "false"; 71 + # }.${stdenv.hostPlatform.parsed.kernel.name} or 72 + # throw "Unknown value for ipc_rmid_deferred_release" 73 + # } 74 + # ''}" 75 + ]; 76 + 77 + preConfigure = '' 78 + patchShebangs version.py 79 + ''; 80 81 enableParallelBuilding = true; 82 83 doCheck = false; # fails 84 85 + postInstall = '' 86 + # Work around broken `Requires.private' that prevents Freetype 87 + # `-I' flags to be propagated. 88 + sed -i "$out/lib/pkgconfig/cairo.pc" \ 89 + -es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype.dev}/include/freetype2 -I${freetype.dev}/include|g' 90 + '' + lib.optionalString stdenv.isDarwin glib.flattenInclude; 91 92 passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; 93 ··· 96 longDescription = '' 97 Cairo is a 2D graphics library with support for multiple output 98 devices. Currently supported output targets include the X 99 + Window System, XCB, Quartz, Win32, image buffers, PostScript, 100 + PDF, and SVG file output. 101 102 Cairo is designed to produce consistent output on all output 103 media while taking advantage of display hardware acceleration ··· 106 homepage = "http://cairographics.org/"; 107 license = with licenses; [ lgpl2Plus mpl10 ]; 108 pkgConfigModules = [ 109 + "cairo-pdf" 110 "cairo-ps" 111 "cairo-svg" 112 + ] ++ lib.optional gobjectSupport "cairo-gobject"; 113 platforms = platforms.all; 114 }; 115 })
+3
pkgs/development/libraries/cogl/default.nix
··· 53 "--enable-wayland-egl-server" 54 "--enable-gles1" 55 "--enable-gles2" 56 ] ++ lib.optionals stdenv.isDarwin [ 57 "--disable-glx" 58 "--without-x"
··· 53 "--enable-wayland-egl-server" 54 "--enable-gles1" 55 "--enable-gles2" 56 + # Force linking against libGL. 57 + # Otherwise, it tries to load it from the runtime library path. 58 + "LIBS=-lGL" 59 ] ++ lib.optionals stdenv.isDarwin [ 60 "--disable-glx" 61 "--without-x"
+2
pkgs/development/libraries/gstreamer/good/default.nix
··· 10 , orc 11 , bzip2 12 , gettext 13 , libv4l 14 , libdv 15 , libavc1394 ··· 129 ]) ++ lib.optionals stdenv.isDarwin [ 130 Cocoa 131 ] ++ lib.optionals stdenv.isLinux [ 132 libv4l 133 libpulseaudio 134 libavc1394
··· 10 , orc 11 , bzip2 12 , gettext 13 + , libGL 14 , libv4l 15 , libdv 16 , libavc1394 ··· 130 ]) ++ lib.optionals stdenv.isDarwin [ 131 Cocoa 132 ] ++ lib.optionals stdenv.isLinux [ 133 + libGL 134 libv4l 135 libpulseaudio 136 libavc1394
+2
pkgs/development/libraries/wxSVG/default.nix
··· 2 , stdenv 3 , fetchurl 4 , cairo 5 , ffmpeg 6 , libexif 7 , pango ··· 28 29 buildInputs = [ 30 cairo 31 ffmpeg 32 libexif 33 pango
··· 2 , stdenv 3 , fetchurl 4 , cairo 5 + , expat 6 , ffmpeg 7 , libexif 8 , pango ··· 29 30 buildInputs = [ 31 cairo 32 + expat 33 ffmpeg 34 libexif 35 pango
+2 -2
pkgs/development/ruby-modules/gem-config/default.nix
··· 22 , pkg-config , ncurses, xapian, gpgme, util-linux, tzdata, icu, libffi 23 , cmake, libssh2, openssl, openssl_1_1, libmysqlclient, git, perl, pcre, pcre2, gecode_3, curl 24 , msgpack, libsodium, snappy, libossp_uuid, lxc, libpcap, xorg, gtk2, buildRubyGem 25 - , cairo, re2, rake, gobject-introspection, gdk-pixbuf, zeromq, czmq, graphicsmagick, libcxx 26 , file, libvirt, glib, vips, taglib, libopus, linux-pam, libidn, protobuf, fribidi, harfbuzz 27 , bison, flex, pango, python3, patchelf, binutils, freetds, wrapGAppsHook, atk 28 , bundler, libsass, dart-sass, libexif, libselinux, libsepol, shared-mime-info, libthai, libdatrie ··· 76 cairo-gobject = attrs: { 77 nativeBuildInputs = [ pkg-config ] 78 ++ lib.optionals stdenv.isDarwin [ DarwinTools ]; 79 - buildInputs = [ cairo pcre2 xorg.libpthreadstubs xorg.libXdmcp ]; 80 }; 81 82 charlock_holmes = attrs: {
··· 22 , pkg-config , ncurses, xapian, gpgme, util-linux, tzdata, icu, libffi 23 , cmake, libssh2, openssl, openssl_1_1, libmysqlclient, git, perl, pcre, pcre2, gecode_3, curl 24 , msgpack, libsodium, snappy, libossp_uuid, lxc, libpcap, xorg, gtk2, buildRubyGem 25 + , cairo, expat, re2, rake, gobject-introspection, gdk-pixbuf, zeromq, czmq, graphicsmagick, libcxx 26 , file, libvirt, glib, vips, taglib, libopus, linux-pam, libidn, protobuf, fribidi, harfbuzz 27 , bison, flex, pango, python3, patchelf, binutils, freetds, wrapGAppsHook, atk 28 , bundler, libsass, dart-sass, libexif, libselinux, libsepol, shared-mime-info, libthai, libdatrie ··· 76 cairo-gobject = attrs: { 77 nativeBuildInputs = [ pkg-config ] 78 ++ lib.optionals stdenv.isDarwin [ DarwinTools ]; 79 + buildInputs = [ cairo expat pcre2 xorg.libpthreadstubs xorg.libXdmcp ]; 80 }; 81 82 charlock_holmes = attrs: {
+4
pkgs/tools/inputmethods/fcitx5/default.nix
··· 8 , extra-cmake-modules 9 , cairo 10 , pango 11 , fribidi 12 , fmt 13 , wayland ··· 29 , libdatrie 30 , xcbutilkeysyms 31 , pcre 32 , xcbutilwm 33 , xcb-imdkit 34 , libxkbfile ··· 63 ]; 64 65 buildInputs = [ 66 fmt 67 isocodes 68 cairo ··· 84 libXdmcp 85 libxkbcommon 86 pcre 87 xcbutilwm 88 xcbutilkeysyms 89 xcb-imdkit
··· 8 , extra-cmake-modules 9 , cairo 10 , pango 11 + , expat 12 , fribidi 13 , fmt 14 , wayland ··· 30 , libdatrie 31 , xcbutilkeysyms 32 , pcre 33 + , xcbutil 34 , xcbutilwm 35 , xcb-imdkit 36 , libxkbfile ··· 65 ]; 66 67 buildInputs = [ 68 + expat 69 fmt 70 isocodes 71 cairo ··· 87 libXdmcp 88 libxkbcommon 89 pcre 90 + xcbutil 91 xcbutilwm 92 xcbutilkeysyms 93 xcb-imdkit