From 49bb1bafa2103f8161add3755e6631ade3a8b137 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 22 Dec 2025 23:22:44 +0800 Subject: [PATCH] xfce.xfwm4: Move away from mkXfceDerivation To reduce the diff when build system change comes. mkXfceDerivation is generally pointless with meson. --- pkgs/desktops/xfce/core/xfwm4/default.nix | 41 ++++++++++++++++++----- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfwm4/default.nix b/pkgs/desktops/xfce/core/xfwm4/default.nix index 0f16ff15e32b..ed8e2fa7632b 100644 --- a/pkgs/desktops/xfce/core/xfwm4/default.nix +++ b/pkgs/desktops/xfce/core/xfwm4/default.nix @@ -1,8 +1,12 @@ { + stdenv, lib, - mkXfceDerivation, - exo, + fetchFromGitLab, + gettext, librsvg, + pkg-config, + xfce4-dev-tools, + wrapGAppsHook3, dbus-glib, libepoxy, gtk3, @@ -13,18 +17,27 @@ libwnck, libXpresent, xfconf, + gitUpdater, }: -mkXfceDerivation { - category = "xfce"; +stdenv.mkDerivation (finalAttrs: { pname = "xfwm4"; version = "4.20.0"; - sha256 = "sha256-5UZQrAH0oz+G+7cvXCLDJ4GSXNJcyl4Ap9umb7h0f5Q="; + src = fetchFromGitLab { + domain = "gitlab.xfce.org"; + owner = "xfce"; + repo = "xfwm4"; + tag = "xfwm4-${finalAttrs.version}"; + hash = "sha256-5UZQrAH0oz+G+7cvXCLDJ4GSXNJcyl4Ap9umb7h0f5Q="; + }; nativeBuildInputs = [ - exo - librsvg + gettext + librsvg # rsvg-convert + pkg-config + xfce4-dev-tools + wrapGAppsHook3 ]; buildInputs = [ @@ -40,8 +53,20 @@ mkXfceDerivation { xfconf ]; + configureFlags = [ "--enable-maintainer-mode" ]; + enableParallelBuilding = true; + + passthru.updateScript = gitUpdater { + rev-prefix = "xfwm4-"; + odd-unstable = true; + }; + meta = { description = "Window manager for Xfce"; + homepage = "https://gitlab.xfce.org/xfce/xfwm4"; + mainProgram = "xfwm4"; + license = lib.licenses.gpl2Plus; + platforms = lib.platforms.linux; teams = [ lib.teams.xfce ]; }; -} +})