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 { };