diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix
index ff4225dc29ad..c0ba60e49a73 100644
--- a/nixos/modules/hardware/video/nvidia.nix
+++ b/nixos/modules/hardware/video/nvidia.nix
@@ -178,11 +178,6 @@ in
igpuBusId = if pCfg.intelBusId != "" then pCfg.intelBusId else pCfg.amdgpuBusId;
in mkIf enabled {
assertions = [
- {
- assertion = with config.services.xserver.displayManager; (gdm.enable && gdm.nvidiaWayland) -> cfg.modesetting.enable;
- message = "You cannot use wayland with GDM without modesetting enabled for NVIDIA drivers, set `hardware.nvidia.modesetting.enable = true`";
- }
-
{
assertion = primeEnabled -> pCfg.intelBusId == "" || pCfg.amdgpuBusId == "";
message = ''
diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix
index 6f0d645725e9..f9d4d3d68364 100644
--- a/nixos/modules/services/x11/display-managers/gdm.nix
+++ b/nixos/modules/services/x11/display-managers/gdm.nix
@@ -53,6 +53,8 @@ in
"autoLogin"
"user"
])
+
+ (mkRemovedOptionModule [ "services" "xserver" "displayManager" "gdm" "nvidiaWayland" ] "We defer to GDM whether Wayland should be enabled.")
];
meta = {
@@ -83,17 +85,6 @@ in
default = true;
description = ''
Allow GDM to run on Wayland instead of Xserver.
- Note to enable Wayland with Nvidia the
- must not be disabled.
- '';
- };
-
- nvidiaWayland = mkOption {
- type = types.bool;
- default = true;
- description = ''
- Whether to allow wayland to be used with the proprietary
- NVidia graphics driver.
'';
};
@@ -230,19 +221,6 @@ in
services.dbus.packages = [ gdm ];
- # We duplicate upstream's udev rules manually to make wayland with nvidia configurable
- services.udev.extraRules = ''
- # disable Wayland on Cirrus chipsets
- ATTR{vendor}=="0x1013", ATTR{device}=="0x00b8", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
- # disable Wayland on Hi1710 chipsets
- ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
- ${optionalString (!cfg.gdm.nvidiaWayland) ''
- DRIVER=="nvidia", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
- ''}
- # disable Wayland when modesetting is disabled
- IMPORT{cmdline}="nomodeset", RUN+="${gdm}/libexec/gdm-runtime-config set daemon WaylandEnable false"
- '';
-
systemd.user.services.dbus.wantedBy = [ "default.target" ];
programs.dconf.profiles.gdm =
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index 5ab9be9fa75a..13b0c84cfaa5 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -7,11 +7,11 @@ let
inherit (python3Packages) python pygobject3;
in stdenv.mkDerivation rec {
pname = "gnumeric";
- version = "1.12.50";
+ version = "1.12.51";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "dYgZuhvWmDgp+efG1xp/ogzXWjZSonHluwA9XYvMFLg=";
+ sha256 = "oA5sbk7N2tq9mwrhgBPXsFk3/cuPmq1ac7lZI8eusd0=";
};
configureFlags = [ "--disable-component" ];
diff --git a/pkgs/data/fonts/cantarell-fonts/default.nix b/pkgs/data/fonts/cantarell-fonts/default.nix
index 011e88dc1d2e..49b4e6354ca4 100644
--- a/pkgs/data/fonts/cantarell-fonts/default.nix
+++ b/pkgs/data/fonts/cantarell-fonts/default.nix
@@ -1,15 +1,36 @@
-{ lib, stdenv, fetchurl, meson, ninja, gettext, appstream-glib, gnome }:
+{ stdenv
+, lib
+, fetchurl
+, meson
+, ninja
+, python3
+, gettext
+, appstream-glib
+, gnome
+}:
stdenv.mkDerivation rec {
pname = "cantarell-fonts";
- version = "0.301";
+ version = "0.303.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "3d35db0ac03f9e6b0d5a53577591b714238985f4cfc31a0aa17f26cd74675e83";
+ sha256 = "+UY6BlnGPlfjgf3XU88ZKSJTlcW0kTWYlCR2GDBTBBE=";
};
- nativeBuildInputs = [ meson ninja gettext appstream-glib ];
+ nativeBuildInputs = [
+ meson
+ ninja
+ python3
+ python3.pkgs.psautohint
+ python3.pkgs.cffsubr
+ python3.pkgs.statmake
+ python3.pkgs.ufo2ft
+ python3.pkgs.setuptools
+ python3.pkgs.ufoLib2
+ gettext
+ appstream-glib
+ ];
# ad-hoc fix for https://github.com/NixOS/nixpkgs/issues/50855
# until we fix gettext's envHook
@@ -19,7 +40,7 @@ stdenv.mkDerivation rec {
outputHashAlgo = "sha256";
outputHashMode = "recursive";
- outputHash = "1sczskw2kv3qy39i9mzw2lkl94a90bjgv5ln9acy5kh4gb2zmy7z";
+ outputHash = "XeqHVdTQ7PTzxkjwfzS/BTR7+k/M69sfUKdRXGOTmZE=";
passthru = {
updateScript = gnome.updateScript {
diff --git a/pkgs/desktops/gnome/core/gdm/default.nix b/pkgs/desktops/gnome/core/gdm/default.nix
index 392ea61688a6..6b51d11adfed 100644
--- a/pkgs/desktops/gnome/core/gdm/default.nix
+++ b/pkgs/desktops/gnome/core/gdm/default.nix
@@ -43,13 +43,13 @@ in
stdenv.mkDerivation rec {
pname = "gdm";
- version = "41.0";
+ version = "41.3";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/gdm/${lib.versions.major version}/${pname}-${version}.tar.xz";
- sha256 = "VzjEKTqfWoDUpungb00N8+nzE8p7Yb+02K+rqYPiANw=";
+ sha256 = "uwtlCnzqkPCaMyhPvQKXUxVAfvwY6BQAmFLRvK00N9Q=";
};
mesonFlags = [
diff --git a/pkgs/desktops/gnome/core/gnome-desktop/default.nix b/pkgs/desktops/gnome/core/gnome-desktop/default.nix
index 860af8bee13a..302d201f234f 100644
--- a/pkgs/desktops/gnome/core/gnome-desktop/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-desktop/default.nix
@@ -26,13 +26,13 @@
stdenv.mkDerivation rec {
pname = "gnome-desktop";
- version = "41.2";
+ version = "41.3";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz";
- sha256 = "sha256-NDKe79rK0jMqatuuU4yNpuUiNcd3WpCLfDIECgdT7Go=";
+ sha256 = "sha256-jNHKq5MRgowEUkaMalBnqbxEY4NbI6FL5E6P2bAwAcY=";
};
patches = [
diff --git a/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
index 6a274e35bf56..7ee9e156e5bb 100644
--- a/pkgs/desktops/gnome/core/gnome-session/ctl.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "gnome-session-ctl";
- version = "40.0";
+ version = "41.3";
src = fetchFromGitHub {
owner = "nix-community";
repo = pname;
rev = version;
- hash = "sha256-gvBmLx8Qoj1vPsOwaZsd9+pTDvU5D7uUts7ZT1pXwNo=";
+ hash = "sha256-aC0tkTf2lgCRlcbFj1FEOVBm3YUuP+8Yz98W3ZjUydg=";
};
nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix
index 3ba6958fad0e..3c6903b2b01b 100644
--- a/pkgs/desktops/gnome/core/gnome-session/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/default.nix
@@ -1,16 +1,42 @@
-{ fetchurl, lib, stdenv, substituteAll, meson, ninja, pkg-config, gnome, glib, gtk3, gsettings-desktop-schemas
-, gnome-desktop, dbus, json-glib, libICE, xmlto, docbook_xsl, docbook_xml_dtd_412, python3
-, libxslt, gettext, makeWrapper, systemd, xorg, libepoxy, gnugrep, bash, gnome-session-ctl }:
+{ fetchurl
+, lib
+, stdenv
+, substituteAll
+, meson
+, ninja
+, pkg-config
+, gnome
+, glib
+, gtk3
+, gsettings-desktop-schemas
+, gnome-desktop
+, dbus
+, json-glib
+, libICE
+, xmlto
+, docbook_xsl
+, docbook_xml_dtd_412
+, python3
+, libxslt
+, gettext
+, makeWrapper
+, systemd
+, xorg
+, libepoxy
+, bash
+, gnome-session-ctl
+}:
stdenv.mkDerivation rec {
pname = "gnome-session";
- version = "40.1.1";
+ # Also bump ./ctl.nix when bumping major version.
+ version = "41.3";
- outputs = ["out" "sessions"];
+ outputs = [ "out" "sessions" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz";
- sha256 = "10nzyhmgkrzk6i70kj7690na0hmsv6qy5bmr10akxq9jxqlphy4w";
+ sha256 = "7koikFP1ImJAVIiWCTNbiFKHz2e73g3J/YgrAeybWzk=";
};
patches = [
@@ -18,22 +44,41 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch;
gsettings = "${glib.bin}/bin/gsettings";
dbusLaunch = "${dbus.lib}/bin/dbus-launch";
- grep = "${gnugrep}/bin/grep";
bash = "${bash}/bin/bash";
})
];
- mesonFlags = [ "-Dsystemd=true" "-Dsystemd_session=default" ];
-
nativeBuildInputs = [
- meson ninja pkg-config gettext makeWrapper
- xmlto libxslt docbook_xsl docbook_xml_dtd_412 python3
+ meson
+ ninja
+ pkg-config
+ gettext
+ makeWrapper
+ xmlto
+ libxslt
+ docbook_xsl
+ docbook_xml_dtd_412
+ python3
dbus # for DTD
];
buildInputs = [
- glib gtk3 libICE gnome-desktop json-glib xorg.xtrans gnome.adwaita-icon-theme
- gnome.gnome-settings-daemon gsettings-desktop-schemas systemd libepoxy
+ glib
+ gtk3
+ libICE
+ gnome-desktop
+ json-glib
+ xorg.xtrans
+ gnome.adwaita-icon-theme
+ gnome.gnome-settings-daemon
+ gsettings-desktop-schemas
+ systemd
+ libepoxy
+ ];
+
+ mesonFlags = [
+ "-Dsystemd=true"
+ "-Dsystemd_session=default"
];
postPatch = ''
@@ -49,17 +94,6 @@ stdenv.mkDerivation rec {
{} +
'';
- # `bin/gnome-session` will reset the environment when run in wayland, we
- # therefor wrap `libexec/gnome-session-binary` instead which is the actual
- # binary needing wrapping
- preFixup = ''
- wrapProgram "$out/libexec/gnome-session-binary" \
- --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
- --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
- --suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share"\
- --suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg"
- '';
-
# We move the GNOME sessions to another output since gnome-session is a dependency of
# GDM itself. If we do not hide them, it will show broken GNOME sessions when GDM is
# enabled without proper GNOME installation.
@@ -72,12 +106,26 @@ stdenv.mkDerivation rec {
rm -rf $out/libexec/gnome-session-ctl
'';
+ # `bin/gnome-session` will reset the environment when run in wayland, we
+ # therefor wrap `libexec/gnome-session-binary` instead which is the actual
+ # binary needing wrapping
+ preFixup = ''
+ wrapProgram "$out/libexec/gnome-session-binary" \
+ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+ --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
+ --suffix XDG_DATA_DIRS : "${gnome.gnome-shell}/share"\
+ --suffix XDG_CONFIG_DIRS : "${gnome.gnome-settings-daemon}/etc/xdg"
+ '';
+
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-session";
attrPath = "gnome.gnome-session";
};
- providedSessions = [ "gnome" "gnome-xorg" ];
+ providedSessions = [
+ "gnome"
+ "gnome-xorg"
+ ];
};
meta = with lib; {
diff --git a/pkgs/desktops/gnome/core/gnome-session/fix-paths.patch b/pkgs/desktops/gnome/core/gnome-session/fix-paths.patch
index 320b3024deee..38805c645b95 100644
--- a/pkgs/desktops/gnome/core/gnome-session/fix-paths.patch
+++ b/pkgs/desktops/gnome/core/gnome-session/fix-paths.patch
@@ -1,17 +1,10 @@
diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in
-index ddd1a591..46a3488b 100755
+index b4b1f8fa..99d52cba 100755
--- a/gnome-session/gnome-session.in
+++ b/gnome-session/gnome-session.in
-@@ -3,17 +3,19 @@
- if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
+@@ -4,13 +4,15 @@ if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
[ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
- [ -n "$SHELL" ] &&
-- grep -q "$SHELL" /etc/shells &&
-- ! (echo "$SHELL" | grep -q "false") &&
-- ! (echo "$SHELL" | grep -q "nologin"); then
-+ @grep@ -q "$SHELL" /etc/shells &&
-+ ! (echo "$SHELL" | @grep@ -q "false") &&
-+ ! (echo "$SHELL" | @grep@ -q "nologin"); then
+ [ -n "$SHELL" ]; then
if [ "$1" != '-l' ]; then
- exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
+ # Make sure the shell actually sets up the environment.
@@ -28,7 +21,7 @@ index ddd1a591..46a3488b 100755
REGION=${REGION%\'}
diff --git a/gnome-session/main.c b/gnome-session/main.c
-index 84edfbe5..e5285489 100644
+index a460a849..9d07898f 100644
--- a/gnome-session/main.c
+++ b/gnome-session/main.c
@@ -215,7 +215,7 @@ require_dbus_session (int argc,
diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix
index 5de52723d007..dc3aaea930e0 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -66,13 +66,13 @@ let
in
stdenv.mkDerivation rec {
pname = "gnome-shell";
- version = "41.2";
+ version = "41.3";
outputs = [ "out" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
- sha256 = "OEZR6wUTk9ur4AbRrQV78p1c1z67h7x3n/Xhwx6AqCc=";
+ sha256 = "Hj36KgvklFQYK0rOd/EdENP1uYjvD8tzK3MTVzlJ3tE=";
};
patches = [
diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix
index 17145ccadfe4..d9dd6efa1487 100644
--- a/pkgs/desktops/gnome/core/mutter/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/default.nix
@@ -46,13 +46,13 @@
let self = stdenv.mkDerivation rec {
pname = "mutter";
- version = "41.2";
+ version = "41.3";
outputs = [ "out" "dev" "man" ];
src = fetchurl {
url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz";
- sha256 = "AN+oEvHEhtdKK3P0IEWuEYL5JGx3lNZ9dLXlQ+pwBhc=";
+ sha256 = "cZxdEGDrYFwbpkO0hvtXsaPHGX59+DvWwzZvxLaEd+U=";
};
patches = [
diff --git a/pkgs/desktops/gnome/misc/gitg/default.nix b/pkgs/desktops/gnome/misc/gitg/default.nix
index 8f73bdaeb7da..e29464556ec0 100644
--- a/pkgs/desktops/gnome/misc/gitg/default.nix
+++ b/pkgs/desktops/gnome/misc/gitg/default.nix
@@ -12,11 +12,11 @@
, bash
, gobject-introspection
, libsoup
-, gtksourceview
+, gtksourceview4
, gsettings-desktop-schemas
, adwaita-icon-theme
, gnome
-, gtkspell3
+, gspell
, shared-mime-info
, libgee
, libgit2-glib
@@ -29,11 +29,11 @@
stdenv.mkDerivation rec {
pname = "gitg";
- version = "3.32.1";
+ version = "41";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "0npg4kqpwl992fgjd2cn3fh84aiwpdp9kd8z7rw2xaj2iazsm914";
+ sha256 = "f7Ybn7EPuqVI0j1wZbq9cq1j5iHeVYQMBlzm45hsRik=";
};
nativeBuildInputs = [
@@ -52,8 +52,8 @@ stdenv.mkDerivation rec {
glib
gsettings-desktop-schemas
gtk3
- gtksourceview
- gtkspell3
+ gtksourceview4
+ gspell
json-glib
libdazzle
libgee
diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix
index 45d3f128c01c..965016e1c740 100644
--- a/pkgs/development/libraries/folks/default.nix
+++ b/pkgs/development/libraries/folks/default.nix
@@ -1,7 +1,6 @@
{ stdenv
, lib
, fetchurl
-, fetchpatch
, pkg-config
, meson
, ninja
@@ -36,24 +35,15 @@
stdenv.mkDerivation rec {
pname = "folks";
- version = "0.15.3";
+ version = "0.15.4";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "Idc3+vCT9L4GVHPucMogiFuaLDaFlB26JMIjn9PFRKU=";
+ sha256 = "5xCZr8noj61OdXrhNLw/1j4SuQGtYrDtVTavt5Ekr18=";
};
- patches = [
- # Fix build with evolution-data-server ≥ 3.41
- # https://gitlab.gnome.org/GNOME/folks/-/merge_requests/52
- (fetchpatch {
- url = "https://gitlab.gnome.org/GNOME/folks/-/commit/62d588b0c609de17df5b4d1ebfbc67c456267efc.patch";
- sha256 = "TDL/5kvVwHnvDMuKDdPLQmpmE1FTZhY+7HG8NxKqt5w=";
- })
- ];
-
nativeBuildInputs = [
gettext
gobject-introspection
diff --git a/pkgs/development/libraries/glibc/2.33-master.patch.gz b/pkgs/development/libraries/glibc/2.33-master.patch.gz
index aecf1550feff..49ffd4a7441c 100644
Binary files a/pkgs/development/libraries/glibc/2.33-master.patch.gz and b/pkgs/development/libraries/glibc/2.33-master.patch.gz differ
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 1bc5bf08ee46..9a84a5f8167a 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -44,7 +44,7 @@
let
version = "2.33";
- patchSuffix = "-62";
+ patchSuffix = "-108";
sha256 = "sha256-LiVWAA4QXb1X8Layoy/yzxc73k8Nhd/8z9i35RoGd/8=";
in
@@ -63,7 +63,7 @@ stdenv.mkDerivation ({
[
/* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
$ git fetch --all -p && git checkout origin/release/2.33/master && git describe
- glibc-2.33-62-gc493f6a0e4
+ glibc-2.33-108-g3e2a15c666
$ git show --minimal --reverse glibc-2.33.. | gzip -9n --rsyncable - > 2.33-master.patch.gz
To compare the archive contents zdiff can be used.
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index f56052953033..627e5f46f728 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -1,5 +1,5 @@
{ config, lib, stdenv, fetchurl, zlib, lzo, libtasn1, nettle, pkg-config, lzip
-, perl, gmp, autoconf, automake, libidn, libiconv
+, perl, gmp, autoconf, automake, libidn2, libiconv
, unbound, dns-root-data, gettext, util-linux
, cxxBindings ? !stdenv.hostPlatform.isStatic # tries to link libstdc++.so
, guileBindings ? config.gnutls.guile or false, guile
@@ -21,11 +21,11 @@ in
stdenv.mkDerivation rec {
pname = "gnutls";
- version = "3.7.2";
+ version = "3.7.3";
src = fetchurl {
url = "mirror://gnupg/gnutls/v${lib.versions.majorMinor version}/gnutls-${version}.tar.xz";
- sha256 = "646e6c5a9a185faa4cea796d378a1ba8e1148dbb197ca6605f95986a25af2752";
+ sha256 = "16n4yvw3792gcdxkikjmhddr6cbs4wlk027zfxlhmchsqcxw8ngw";
};
outputs = [ "bin" "dev" "out" "man" "devdoc" ];
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
- buildInputs = [ lzo lzip libtasn1 libidn zlib gmp libunistring unbound gettext libiconv ]
+ buildInputs = [ lzo lzip libtasn1 libidn2 zlib gmp libunistring unbound gettext libiconv ]
++ lib.optional (withP11-kit) p11-kit
++ lib.optional (isDarwin && withSecurity) Security
++ lib.optional (tpmSupport && stdenv.isLinux) trousers
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 69f43d31da71..b91e140345de 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -33,7 +33,7 @@ with lib;
let
# Release calendar: https://www.mesa3d.org/release-calendar.html
# Release frequency: https://www.mesa3d.org/releasing.html#schedule
- version = "21.3.4";
+ version = "21.3.5";
branch = versions.major version;
self = stdenv.mkDerivation {
@@ -47,7 +47,7 @@ self = stdenv.mkDerivation {
"ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz"
"ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
];
- sha256 = "0zd6skf9qcwlk1k1ljgwijwlyz5si3pgi0h97gd6kkivm7a4y43p";
+ sha256 = "0k2ary16ixsrp65m2n5djpr51nbwdgzpv81pfrnqbvk44jfjlfyr";
};
# TODO:
diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/development/libraries/tracker-miners/default.nix
index e3c74bd2fe45..10307c35f0c5 100644
--- a/pkgs/development/libraries/tracker-miners/default.nix
+++ b/pkgs/development/libraries/tracker-miners/default.nix
@@ -127,7 +127,6 @@ stdenv.mkDerivation rec {
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
- versionPolicy = "none";
};
};
diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix
index 727634a9fd5d..d2a953839982 100644
--- a/pkgs/development/libraries/tracker/default.nix
+++ b/pkgs/development/libraries/tracker/default.nix
@@ -132,7 +132,6 @@ stdenv.mkDerivation rec {
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
- versionPolicy = "none";
};
};
diff --git a/pkgs/development/python-modules/afdko/default.nix b/pkgs/development/python-modules/afdko/default.nix
index abe6bad71d9a..66f12ffd54b0 100644
--- a/pkgs/development/python-modules/afdko/default.nix
+++ b/pkgs/development/python-modules/afdko/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, pythonOlder
+{ lib, stdenv, buildPythonPackage, fetchPypi, fetchpatch, pythonOlder
, fonttools, defcon, lxml, fs, unicodedata2, zopfli, brotlipy, fontpens
, brotli, fontmath, mutatormath, booleanoperations
, ufoprocessor, ufonormalizer, psautohint, tqdm
@@ -37,8 +37,15 @@ buildPythonPackage rec {
patches = [
# Don't try to install cmake and ninja using pip
./no-pypi-build-tools.patch
+
# Use antlr4 runtime from nixpkgs and link it dynamically
./use-dynamic-system-antlr4-runtime.patch
+
+ # Fix compatibility with latest fonttools.
+ (fetchpatch {
+ url = "https://github.com/adobe-type-tools/afdko/commit/120752c50a562e4f6c12ff4be1e3bd96ed664e82.patch";
+ sha256 = "RDGIpNAuCmK+zqZOeOK7ddCjr9BuqPpcnbnxdtoE48M=";
+ })
];
# setup.py will always (re-)execute cmake in buildPhase
diff --git a/pkgs/development/python-modules/cffsubr/default.nix b/pkgs/development/python-modules/cffsubr/default.nix
new file mode 100644
index 000000000000..0c7e6849b3f1
--- /dev/null
+++ b/pkgs/development/python-modules/cffsubr/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fonttools
+, pytestCheckHook
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+ pname = "cffsubr";
+ version = "0.2.9.post1";
+
+ format = "pyproject";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "azFBLc9JyPqEZkvahn4u3cVbb+b6aW/yU8TxOp/y/Fw=";
+ };
+
+ nativeBuildInputs = [
+ setuptools-scm
+ ];
+
+ propagatedBuildInputs = [
+ fonttools
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+ pythonImportsCheck = [ "cffsubr" ];
+
+ meta = with lib; {
+ description = "Standalone CFF subroutinizer based on AFDKO tx";
+ homepage = "https://github.com/adobe-type-tools/cffsubr";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ jtojnar ];
+ };
+}
diff --git a/pkgs/development/python-modules/compreffor/default.nix b/pkgs/development/python-modules/compreffor/default.nix
new file mode 100644
index 000000000000..942773902583
--- /dev/null
+++ b/pkgs/development/python-modules/compreffor/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools-scm
+, fonttools
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+ pname = "compreffor";
+ version = "0.5.1.post1";
+
+ format = "pyproject";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "Zqia+yP4Dp5VNGeMwv+j04aNm9oVmZ2juehbfEzDfOQ=";
+ };
+
+ nativeBuildInputs = [
+ setuptools-scm
+ ];
+
+ propagatedBuildInputs = [
+ fonttools
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+ # Tests cannot seem to open the cpython module.
+ doCheck = false;
+
+ pythonImportsCheck = [
+ "compreffor"
+ ];
+
+ meta = with lib; {
+ description = "CFF table subroutinizer for FontTools";
+ homepage = "https://github.com/googlefonts/compreffor";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ jtojnar ];
+ };
+}
diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix
index ec3acfc775d0..50f5e87a29f4 100644
--- a/pkgs/development/python-modules/fonttools/default.nix
+++ b/pkgs/development/python-modules/fonttools/default.nix
@@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "fonttools";
- version = "4.26.2";
+ version = "4.29.0";
# Bump to 3.7 when https://github.com/fonttools/fonttools/pull/2417 is merged
disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = pname;
repo = pname;
rev = version;
- sha256 = "1zp9idjkn4bn1a4pn8x64vi8j1ijdsd4qvgf1f70dfwqvw6ak1i6";
+ sha256 = "LnkpTEpZbbRAyqGPJXdfpHjh4t7n6LkjZGLhirVNl7E=";
};
# all dependencies are optional, but
diff --git a/pkgs/development/python-modules/imageio/default.nix b/pkgs/development/python-modules/imageio/default.nix
index 0a97a27d17f8..5727b52755a6 100644
--- a/pkgs/development/python-modules/imageio/default.nix
+++ b/pkgs/development/python-modules/imageio/default.nix
@@ -2,6 +2,7 @@
, buildPythonPackage
, isPy27
, fetchPypi
+, fetchpatch
, imageio-ffmpeg
, numpy
, pillow
@@ -12,14 +13,23 @@
buildPythonPackage rec {
pname = "imageio";
- version = "2.13.2";
+ version = "2.13.5";
disabled = isPy27;
src = fetchPypi {
- sha256 = "5b7a55d07de88a2fd70f18a1608ca05ba2b55596a942fb2c390240201009a6c3";
+ sha256 = "0gc41aiz2i0napk1y00v9bgb4m7dd21sz3lghfm6w6s0ivjjpv67";
inherit pname version;
};
+ patches = [
+ # already present in master, remove on next bump
+ (fetchpatch {
+ name = "pillow-9-gif-rgba.patch";
+ url = "https://github.com/imageio/imageio/commit/836b7a9b077a96de8adab5b67ea53b1292048275.patch";
+ sha256 = "0rlyppa4w16n6qn5hr4wrg8xiy7ifs8c5dhmq8a9yncypx87glpv";
+ })
+ ];
+
propagatedBuildInputs = [
imageio-ffmpeg
numpy
diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix
index e0f29d366e10..57b085a54051 100644
--- a/pkgs/development/python-modules/pillow/default.nix
+++ b/pkgs/development/python-modules/pillow/default.nix
@@ -5,13 +5,13 @@
import ./generic.nix (rec {
pname = "Pillow";
- version = "8.4.0";
+ version = "9.0.0";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
- sha256 = "b8e2f83c56e141920c39464b852de3719dfbfb6e3c99a2d8da0edf4fb33176ed";
+ sha256 = "0gjry0yqryd2678sm47jhdnbghzxn5wk8pgyaqwr4qi7x5ijjvpf";
};
meta = with lib; {
diff --git a/pkgs/development/python-modules/statmake/default.nix b/pkgs/development/python-modules/statmake/default.nix
new file mode 100644
index 000000000000..7de42d5bc945
--- /dev/null
+++ b/pkgs/development/python-modules/statmake/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, attrs
+, cattrs
+, fonttools
+, fs
+, pytestCheckHook
+, ufo2ft
+, ufoLib2
+}:
+
+buildPythonPackage rec {
+ pname = "statmake";
+ version = "0.4.1";
+
+ format = "pyproject";
+
+ src = fetchFromGitHub {
+ owner = "daltonmaag";
+ repo = "statmake";
+ rev = "v${version}";
+ sha256 = "OXhoQAD4LEh80iRUZE2z8sCtWJDv/bSo0bwHbOOPVE0=";
+ };
+
+ nativeBuildInputs = [
+ poetry-core
+ ];
+
+ propagatedBuildInputs = [
+ attrs
+ cattrs
+ fonttools
+ # required by fonttools[ufo]
+ fs
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ufo2ft
+ ufoLib2
+ ];
+
+ postPatch = ''
+ # https://github.com/daltonmaag/statmake/pull/41
+ substituteInPlace pyproject.toml \
+ --replace 'requires = ["poetry>=1.0.0"]' 'requires = ["poetry-core"]' \
+ --replace 'build-backend = "poetry.masonry.api"' 'build-backend = "poetry.core.masonry.api"'
+ '';
+
+ meta = with lib; {
+ description = "Applies STAT information from a Stylespace to a variable font";
+ homepage = "https://github.com/daltonmaag/statmake";
+ license = licenses.mit;
+ maintainers = with maintainers; [ jtojnar ];
+ };
+}
diff --git a/pkgs/development/python-modules/ufo2ft/default.nix b/pkgs/development/python-modules/ufo2ft/default.nix
new file mode 100644
index 000000000000..a3458b2f332f
--- /dev/null
+++ b/pkgs/development/python-modules/ufo2ft/default.nix
@@ -0,0 +1,62 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools-scm
+, fonttools
+, defcon
+, compreffor
+, booleanoperations
+, cffsubr
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+ pname = "ufo2ft";
+ version = "2.25.2";
+
+ format = "setuptools";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "ooWIHvyMtrht4WcGPiacY8dfjPSb5uitHnTRTKvf2AA=";
+ };
+
+ patches = [
+ # Use cu2qu from fonttools.
+ # https://github.com/googlefonts/ufo2ft/pull/461
+ ./fonttools-cu2qu.patch
+ ];
+
+ nativeBuildInputs = [
+ setuptools-scm
+ ];
+
+ propagatedBuildInputs = [
+ fonttools
+ defcon
+ compreffor
+ booleanoperations
+ cffsubr
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+ pytestFlagsArray = [
+ # Do not depend on skia.
+ "--deselect=tests/integration_test.py::IntegrationTest::test_removeOverlaps_CFF_pathops"
+ "--deselect=tests/integration_test.py::IntegrationTest::test_removeOverlaps_pathops"
+ "--deselect=tests/preProcessor_test.py::TTFPreProcessorTest::test_custom_filters_as_argument"
+ "--deselect=tests/preProcessor_test.py::TTFInterpolatablePreProcessorTest::test_custom_filters_as_argument"
+ ];
+
+ pythonImportsCheck = [ "ufo2ft" ];
+
+ meta = with lib; {
+ description = "Bridge from UFOs to FontTools objects";
+ homepage = "https://github.com/googlefonts/ufo2ft";
+ license = licenses.mit;
+ maintainers = with maintainers; [ jtojnar ];
+ };
+}
diff --git a/pkgs/development/python-modules/ufo2ft/fonttools-cu2qu.patch b/pkgs/development/python-modules/ufo2ft/fonttools-cu2qu.patch
new file mode 100644
index 000000000000..892cd4abeb30
--- /dev/null
+++ b/pkgs/development/python-modules/ufo2ft/fonttools-cu2qu.patch
@@ -0,0 +1,126 @@
+From 0b3631e91c93d56460929f40850f7d8a39a71bde Mon Sep 17 00:00:00 2001
+From: Simon Cozens
+Date: Thu, 11 Feb 2021 09:43:41 +0000
+Subject: [PATCH 1/2] Rename cu2qu to fontTools.cu2qu
+
+---
+ Lib/ufo2ft/filters/cubicToQuadratic.py | 4 ++--
+ Lib/ufo2ft/preProcessor.py | 4 ++--
+ requirements.txt | 1 -
+ setup.py | 1 -
+ tests/outlineCompiler_test.py | 2 +-
+ tests/preProcessor_test.py | 2 +-
+ 6 files changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/Lib/ufo2ft/filters/cubicToQuadratic.py b/Lib/ufo2ft/filters/cubicToQuadratic.py
+index 87d81b1f..4b77144f 100644
+--- a/Lib/ufo2ft/filters/cubicToQuadratic.py
++++ b/Lib/ufo2ft/filters/cubicToQuadratic.py
+@@ -1,7 +1,7 @@
+ import logging
+
+-from cu2qu.pens import Cu2QuPointPen
+-from cu2qu.ufo import CURVE_TYPE_LIB_KEY, DEFAULT_MAX_ERR
++from fontTools.pens.cu2quPen import Cu2QuPointPen
++from fontTools.cu2qu.ufo import CURVE_TYPE_LIB_KEY, DEFAULT_MAX_ERR
+
+ from ufo2ft.filters import BaseFilter
+ from ufo2ft.fontInfoData import getAttrWithFallback
+diff --git a/Lib/ufo2ft/preProcessor.py b/Lib/ufo2ft/preProcessor.py
+index 05ac47dc..c796df2e 100644
+--- a/Lib/ufo2ft/preProcessor.py
++++ b/Lib/ufo2ft/preProcessor.py
+@@ -217,7 +217,7 @@ def __init__(
+ layerNames=None,
+ skipExportGlyphs=None,
+ ):
+- from cu2qu.ufo import DEFAULT_MAX_ERR
++ from fontTools.cu2qu.ufo import DEFAULT_MAX_ERR
+
+ self.ufos = ufos
+ self.inplace = inplace
+@@ -249,7 +249,7 @@ def __init__(
+ self.postFilters.append(post)
+
+ def process(self):
+- from cu2qu.ufo import fonts_to_quadratic
++ from fontTools.cu2qu.ufo import fonts_to_quadratic
+
+ # first apply all custom pre-filters
+ for funcs, ufo, glyphSet in zip(self.preFilters, self.ufos, self.glyphSets):
+diff --git a/setup.py b/setup.py
+index 175429af..eef39ee1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -30,7 +30,6 @@
+ tests_require=["pytest>=2.8"],
+ install_requires=[
+ "fonttools[ufo]>=4.28.5",
+- "cu2qu>=1.6.7",
+ "cffsubr>=0.2.8",
+ "booleanOperations>=0.9.0",
+ ],
+diff --git a/tests/outlineCompiler_test.py b/tests/outlineCompiler_test.py
+index 74319184..e7b15a23 100644
+--- a/tests/outlineCompiler_test.py
++++ b/tests/outlineCompiler_test.py
+@@ -2,7 +2,7 @@
+ import os
+
+ import pytest
+-from cu2qu.ufo import font_to_quadratic
++from fontTools.cu2qu.ufo import font_to_quadratic
+ from fontTools.ttLib import TTFont
+ from fontTools.ttLib.tables._g_l_y_f import USE_MY_METRICS
+
+diff --git a/tests/preProcessor_test.py b/tests/preProcessor_test.py
+index 64196f92..87b23946 100644
+--- a/tests/preProcessor_test.py
++++ b/tests/preProcessor_test.py
+@@ -2,7 +2,7 @@
+ import os
+
+ import pytest
+-from cu2qu.ufo import CURVE_TYPE_LIB_KEY
++from fontTools.cu2qu.ufo import CURVE_TYPE_LIB_KEY
+ from fontTools import designspaceLib
+
+ import ufo2ft
+
+From 27c5af88ec2c3314618ecbf65104050a53508bb0 Mon Sep 17 00:00:00 2001
+From: Simon Cozens
+Date: Thu, 11 Feb 2021 09:49:28 +0000
+Subject: [PATCH 2/2] Sort the imports
+
+---
+ Lib/ufo2ft/filters/cubicToQuadratic.py | 2 +-
+ tests/preProcessor_test.py | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Lib/ufo2ft/filters/cubicToQuadratic.py b/Lib/ufo2ft/filters/cubicToQuadratic.py
+index 4b77144f..5f28ea42 100644
+--- a/Lib/ufo2ft/filters/cubicToQuadratic.py
++++ b/Lib/ufo2ft/filters/cubicToQuadratic.py
+@@ -1,7 +1,7 @@
+ import logging
+
+-from fontTools.pens.cu2quPen import Cu2QuPointPen
+ from fontTools.cu2qu.ufo import CURVE_TYPE_LIB_KEY, DEFAULT_MAX_ERR
++from fontTools.pens.cu2quPen import Cu2QuPointPen
+
+ from ufo2ft.filters import BaseFilter
+ from ufo2ft.fontInfoData import getAttrWithFallback
+diff --git a/tests/preProcessor_test.py b/tests/preProcessor_test.py
+index 87b23946..76ee495a 100644
+--- a/tests/preProcessor_test.py
++++ b/tests/preProcessor_test.py
+@@ -2,8 +2,8 @@
+ import os
+
+ import pytest
+-from fontTools.cu2qu.ufo import CURVE_TYPE_LIB_KEY
+ from fontTools import designspaceLib
++from fontTools.cu2qu.ufo import CURVE_TYPE_LIB_KEY
+
+ import ufo2ft
+ from ufo2ft.constants import (
diff --git a/pkgs/development/python-modules/ufoLib2/default.nix b/pkgs/development/python-modules/ufoLib2/default.nix
new file mode 100644
index 000000000000..6697e0b705f1
--- /dev/null
+++ b/pkgs/development/python-modules/ufoLib2/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, attrs
+, fonttools
+, pytestCheckHook
+, fs
+}:
+
+buildPythonPackage rec {
+ pname = "ufoLib2";
+ version = "0.13.0";
+
+ format = "pyproject";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "xJfvyNE+30BgNirX8u1xhKcD8pM3owRAVC4WX+qFqEM=";
+ };
+
+ propagatedBuildInputs = [
+ attrs
+ fonttools
+ # required by fonttools[ufo]
+ fs
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+pythonImportsCheck = [ "ufoLib2" ];
+
+ meta = with lib; {
+ description = "Library to deal with UFO font sources";
+ homepage = "https://github.com/fonttools/ufoLib2";
+ license = licenses.mit;
+ maintainers = with maintainers; [ jtojnar ];
+ };
+}
diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix
index 33ab4f784fcb..65bf01aa4cfc 100644
--- a/pkgs/os-specific/linux/pam/default.nix
+++ b/pkgs/os-specific/linux/pam/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
sha256 = "sha256-IB1AcwsRNbGzzeoJ8sKKxjTXMYHM0Bcs7d7jZJxXkvw=";
};
+ patches = [ ./suid-wrapper-path.patch ];
+
outputs = [ "out" "doc" "man" /* "modules" */ ];
depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/pkgs/os-specific/linux/pam/suid-wrapper-path.patch b/pkgs/os-specific/linux/pam/suid-wrapper-path.patch
new file mode 100644
index 000000000000..71533c51a190
--- /dev/null
+++ b/pkgs/os-specific/linux/pam/suid-wrapper-path.patch
@@ -0,0 +1,6 @@
+It needs the SUID version during runtime, and that can't be in /nix/store/**
+--- a/modules/pam_unix/Makefile.in
++++ b/modules/pam_unix/Makefile.in
+@@ -651 +651 @@
+- -DCHKPWD_HELPER=\"$(sbindir)/unix_chkpwd\" \
++ -DCHKPWD_HELPER=\"/run/wrappers/bin/unix_chkpwd\" \
diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix
index afdf335e1b40..8485565e0a88 100644
--- a/pkgs/os-specific/linux/util-linux/default.nix
+++ b/pkgs/os-specific/linux/util-linux/default.nix
@@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
pname = "util-linux";
- version = "2.37.2";
+ version = "2.37.3";
src = fetchurl {
url = "mirror://kernel/linux/utils/util-linux/v${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "sha256-agdkwarn+2B++KbdLA9sR9Xl/SeqCIIKuq2ewU4o6dk=";
+ sha256 = "sha256-WQxZLljNa/OFGctGevBc5qGrGAQOPjQY8kvPsvVfl3Y=";
};
patches = [
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 0536f366d50b..79aeeeb463c5 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1517,6 +1517,8 @@ in {
cffi = callPackage ../development/python-modules/cffi { };
+ cffsubr = callPackage ../development/python-modules/cffsubr { };
+
cfgv = callPackage ../development/python-modules/cfgv { };
cfn-flip = callPackage ../development/python-modules/cfn-flip { };
@@ -1771,6 +1773,8 @@ in {
compiledb = callPackage ../development/python-modules/compiledb { };
+ compreffor = callPackage ../development/python-modules/compreffor { };
+
concurrent-log-handler = callPackage ../development/python-modules/concurrent-log-handler { };
conda = callPackage ../development/python-modules/conda { };
@@ -9410,6 +9414,8 @@ in {
statistics = callPackage ../development/python-modules/statistics { };
+ statmake = callPackage ../development/python-modules/statmake { };
+
statsd = callPackage ../development/python-modules/statsd { };
statsmodels = callPackage ../development/python-modules/statsmodels { };
@@ -10061,6 +10067,10 @@ in {
inherit (pkgs.xorg) libX11 libXext;
};
+ ufo2ft = callPackage ../development/python-modules/ufo2ft { };
+
+ ufoLib2 = callPackage ../development/python-modules/ufoLib2 { };
+
ufonormalizer = callPackage ../development/python-modules/ufonormalizer { };
ufoprocessor = callPackage ../development/python-modules/ufoprocessor { };