diff --git a/pkgs/by-name/li/libfm/package.nix b/pkgs/by-name/li/libfm/package.nix index f536195d36e5..6b2eacdc2b2c 100644 --- a/pkgs/by-name/li/libfm/package.nix +++ b/pkgs/by-name/li/libfm/package.nix @@ -1,8 +1,10 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, fetchpatch, + autoreconfHook, + gtk-doc, glib, intltool, menu-cache, @@ -21,25 +23,21 @@ let in stdenv.mkDerivation (finalAttrs: { pname = if extraOnly then "libfm-extra" else "libfm"; - version = "1.3.2"; + version = "1.4.0"; - src = fetchurl { - url = "mirror://sourceforge/pcmanfm/libfm-${finalAttrs.version}.tar.xz"; - sha256 = "sha256-pQQmMDBM+OXYz/nVZca9VG8ii0jJYBU+02ajTofK0eU="; + src = fetchFromGitHub { + owner = "lxde"; + repo = "libfm"; + tag = finalAttrs.version; + hash = "sha256-dmu5ygPuZe2YWAzIVPx5zskQeB51hXcLbMczxWgCr78="; }; - patches = [ - # Add casts to fix -Werror=incompatible-pointer-types - (fetchpatch { - url = "https://github.com/lxde/libfm/commit/fbcd183335729fa3e8dd6a837c13a23ff3271000.patch"; - hash = "sha256-RbX8jkP/5ao6NWEnv8Pgy4zwZaiDsslGlRRWdoV3enA="; - }) - ]; - nativeBuildInputs = [ + autoreconfHook vala pkg-config intltool + gtk-doc ]; buildInputs = [ glib @@ -56,11 +54,6 @@ stdenv.mkDerivation (finalAttrs: { installFlags = [ "sysconfdir=${placeholder "out"}/etc" ]; - postPatch = '' - # Ensure the files are re-generated from Vala sources. - rm src/actions/*.c - ''; - # libfm-extra is pulled in by menu-cache and thus leads to a collision for libfm postInstall = optionalString (!extraOnly) '' rm $out/lib/libfm-extra.so $out/lib/libfm-extra.so.* $out/lib/libfm-extra.la $out/lib/pkgconfig/libfm-extra.pc diff --git a/pkgs/by-name/lx/lxterminal/package.nix b/pkgs/by-name/lx/lxterminal/package.nix index 9fb97945ae4e..e698ad2c501a 100644 --- a/pkgs/by-name/lx/lxterminal/package.nix +++ b/pkgs/by-name/lx/lxterminal/package.nix @@ -2,8 +2,7 @@ lib, stdenv, fetchFromGitHub, - automake, - autoconf, + autoreconfHook, intltool, pkg-config, gtk3, @@ -26,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "lxde"; repo = "lxterminal"; tag = finalAttrs.version; - sha256 = "sha256-oDWh0U4QWJ84hTfq1oaAmDJM+IY0eJqOUey0qBgZN5U="; + hash = "sha256-oDWh0U4QWJ84hTfq1oaAmDJM+IY0eJqOUey0qBgZN5U="; }; configureFlags = [ @@ -35,8 +34,7 @@ stdenv.mkDerivation (finalAttrs: { ]; nativeBuildInputs = [ - automake - autoconf + autoreconfHook intltool pkg-config wrapGAppsHook3 @@ -57,10 +55,6 @@ stdenv.mkDerivation (finalAttrs: { ./respect-xml-catalog-files-var.patch ]; - preConfigure = '' - ./autogen.sh - ''; - doCheck = true; passthru.tests.test = nixosTests.terminal-emulators.lxterminal; diff --git a/pkgs/by-name/me/menu-cache/package.nix b/pkgs/by-name/me/menu-cache/package.nix index 0994473826e1..34e522e6f797 100644 --- a/pkgs/by-name/me/menu-cache/package.nix +++ b/pkgs/by-name/me/menu-cache/package.nix @@ -1,44 +1,41 @@ { lib, stdenv, - fetchurl, - fetchpatch, + fetchFromGitHub, glib, pkg-config, libfm-extra, + autoreconfHook, + gtk-doc, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "menu-cache"; - version = "1.1.0"; + version = "1.1.1"; - src = fetchurl { - url = "mirror://sourceforge/lxde/menu-cache-${version}.tar.xz"; - sha256 = "1iry4zlpppww8qai2cw4zid4081hh7fz8nzsp5lqyffbkm2yn0pd"; + src = fetchFromGitHub { + owner = "lxde"; + repo = "menu-cache"; + tag = finalAttrs.version; + hash = "sha256-5Vp2btrflimy+Hq+3MLpic/quZMJ3uwsMq12G7s4DGI="; }; - patches = [ - # Pull patch pending upstream inclusion for -fno-common toolchain support: - # https://github.com/lxde/menu-cache/pull/19 - (fetchpatch { - name = "fno-common.patch"; - url = "https://github.com/lxde/menu-cache/commit/1ce739649b4d66339a03fc0ec9ee7a2f7c141780.patch"; - sha256 = "08x3h0w2pl8ifj83v9jkf4j3zxcwsyzh251divlhhnwx0rw1pyn7"; - }) + nativeBuildInputs = [ + autoreconfHook + pkg-config + gtk-doc ]; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ glib libfm-extra ]; - meta = with lib; { + meta = { description = "Library to read freedesktop.org menu files"; homepage = "https://blog.lxde.org/tag/menu-cache/"; - license = licenses.gpl2Plus; - maintainers = [ maintainers.ttuegel ]; - platforms = platforms.linux ++ platforms.darwin; + license = lib.licenses.gpl2Plus; + maintainers = [ lib.maintainers.ttuegel ]; + platforms = lib.platforms.linux ++ lib.platforms.darwin; }; -} +}) diff --git a/pkgs/desktops/lxde/core/lxappearance/default.nix b/pkgs/desktops/lxde/core/lxappearance/default.nix index f7d297f0f423..4897e6613d8a 100644 --- a/pkgs/desktops/lxde/core/lxappearance/default.nix +++ b/pkgs/desktops/lxde/core/lxappearance/default.nix @@ -1,29 +1,39 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, + autoreconfHook, intltool, pkg-config, libX11, gtk2, gtk3, + libxslt, + docbook_xsl, wrapGAppsHook3, withGtk3 ? true, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lxappearance"; - version = "0.6.3"; + version = "0.6.4"; - src = fetchurl { - url = "mirror://sourceforge/project/lxde/LXAppearance/${pname}-${version}.tar.xz"; - sha256 = "0f4bjaamfxxdr9civvy55pa6vv9dx1hjs522gjbbgx7yp1cdh8kj"; + src = fetchFromGitHub { + owner = "lxde"; + repo = "lxappearance"; + tag = finalAttrs.version; + hash = "sha256-t5P3JYGZzhTaJ3s23r6yrAQoFcCV5uteHh67sWY1KrI="; }; + enableParallelBuilding = true; + nativeBuildInputs = [ pkg-config intltool wrapGAppsHook3 + autoreconfHook + libxslt + docbook_xsl ]; buildInputs = [ @@ -35,14 +45,16 @@ stdenv.mkDerivation rec { ./lxappearance-0.6.3-xdg.system.data.dirs.patch ]; + env.XSLTPROC = lib.getExe' libxslt "xsltproc"; + configureFlags = lib.optional withGtk3 "--enable-gtk3"; - meta = with lib; { + meta = { description = "Lightweight program for configuring the theme and fonts of gtk applications"; mainProgram = "lxappearance"; homepage = "https://lxde.org/"; - license = licenses.gpl2Plus; - platforms = platforms.linux; - maintainers = with maintainers; [ romildo ]; + license = lib.licenses.gpl2Plus; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ romildo ]; }; -} +}) diff --git a/pkgs/desktops/lxde/core/lxmenu-data/default.nix b/pkgs/desktops/lxde/core/lxmenu-data/default.nix index a53885f33ed7..a1679bd8a700 100644 --- a/pkgs/desktops/lxde/core/lxmenu-data/default.nix +++ b/pkgs/desktops/lxde/core/lxmenu-data/default.nix @@ -1,20 +1,30 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, + autoreconfHook, intltool, + pkg-config, + glib, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lxmenu-data"; - version = "0.1.5"; + version = "0.1.6"; - src = fetchurl { - url = "mirror://sourceforge/lxde/${pname}-${version}.tar.xz"; - sha256 = "9fe3218d2ef50b91190162f4f923d6524c364849f87bcda8b4ed8eb59b80bab8"; + src = fetchFromGitHub { + owner = "lxde"; + repo = "lxmenu-data"; + tag = finalAttrs.version; + hash = "sha256-5QdQ+7nzj7wDrfdt4GT8VW4+sHgZdE7h3cReY2pmcak="; }; - nativeBuildInputs = [ intltool ]; + nativeBuildInputs = [ + autoreconfHook + intltool + pkg-config + glib + ]; meta = { homepage = "https://lxde.org/"; @@ -22,4 +32,4 @@ stdenv.mkDerivation rec { description = "Freedesktop.org desktop menus for LXDE"; platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/desktops/lxde/core/lxpanel/default.nix b/pkgs/desktops/lxde/core/lxpanel/default.nix index fa3f77840c45..c970ea9e4ac3 100644 --- a/pkgs/desktops/lxde/core/lxpanel/default.nix +++ b/pkgs/desktops/lxde/core/lxpanel/default.nix @@ -1,8 +1,8 @@ { lib, stdenv, - fetchurl, - fetchpatch2, + fetchFromGitHub, + autoreconfHook, pkg-config, gettext, m4, @@ -32,29 +32,26 @@ stdenv.mkDerivation (finalAttrs: { pname = "lxpanel"; - version = "0.10.1"; + version = "0.11.1"; - src = fetchurl { - url = "mirror://sourceforge/lxde/${finalAttrs.pname}-${finalAttrs.version}.tar.xz"; - sha256 = "sha256-HjGPV9fja2HCOlBNA9JDDHja0ULBgERRBh8bPqVEHug="; + src = fetchFromGitHub { + owner = "lxde"; + repo = "lxpanel"; + tag = finalAttrs.version; + hash = "sha256-jpe5AfRkyTVKQ9biOJiWKv0OVqP8gRCzfhSLDjnrEPc="; }; - patches = [ - # fix build with gcc14 - # https://github.com/lxde/lxpanel/commit/0853b0fc981285ebd2ac52f8dfc2a09b1090748c - (fetchpatch2 { - url = "https://github.com/lxde/lxpanel/commit/0853b0fc981285ebd2ac52f8dfc2a09b1090748c.patch?full_index=1"; - hash = "sha256-lj4CWdiUQhEc9J8UNKcP7/tmsGnPjA5pwXAok5YFW4M="; - }) - ]; + enableParallelBuilding = true; nativeBuildInputs = [ + autoreconfHook pkg-config gettext m4 intltool libxmlxx ]; + buildInputs = [ (if withGtk3 then keybinder3 else keybinder) (if withGtk3 then gtk3 else gtk2) @@ -74,13 +71,6 @@ stdenv.mkDerivation (finalAttrs: { ] ++ lib.optional supportAlsa alsa-lib; - postPatch = '' - substituteInPlace src/Makefile.in \ - --replace "@PACKAGE_CFLAGS@" "@PACKAGE_CFLAGS@ -I${gdk-pixbuf-xlib.dev}/include/gdk-pixbuf-2.0" - substituteInPlace plugins/Makefile.in \ - --replace "@PACKAGE_CFLAGS@" "@PACKAGE_CFLAGS@ -I${gdk-pixbuf-xlib.dev}/include/gdk-pixbuf-2.0" - ''; - configureFlags = lib.optional withGtk3 "--enable-gtk3"; meta = { @@ -89,5 +79,6 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.gpl2Plus; maintainers = [ lib.maintainers.ryneeverett ]; platforms = lib.platforms.linux; + mainProgram = "lxpanel"; }; }) diff --git a/pkgs/desktops/lxde/core/lxrandr/default.nix b/pkgs/desktops/lxde/core/lxrandr/default.nix index 2e395e8c10fa..2399a5c327d9 100644 --- a/pkgs/desktops/lxde/core/lxrandr/default.nix +++ b/pkgs/desktops/lxde/core/lxrandr/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, pkg-config, intltool, gtk2, @@ -9,35 +9,53 @@ xrandr, withGtk3 ? false, gtk3, + autoreconfHook, + libxslt, + docbook_xsl, + docbook_xml_dtd_412, + libxml2, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lxrandr"; - version = "0.3.2"; + version = "0.3.3"; - src = fetchurl { - url = "mirror://sourceforge/lxde/${pname}-${version}.tar.xz"; - sha256 = "04n3vgh3ix12p8jfs4w0dyfq3anbjy33h7g53wbbqqc0f74xyplb"; + src = fetchFromGitHub { + owner = "lxde"; + repo = "lxrandr"; + tag = finalAttrs.version; + hash = "sha256-EGUnvV1FqQUJkjGwxgVecXOohAu8Qa8Prgk6xZfJBe4="; }; - configureFlags = lib.optional withGtk3 "--enable-gtk3"; + configureFlags = [ + "--enable-man" + ] + ++ lib.optional withGtk3 "--enable-gtk3"; nativeBuildInputs = [ + autoreconfHook pkg-config intltool + libxslt + libxml2 + docbook_xml_dtd_412 + docbook_xsl ]; + + patches = [ ./respect-xml-catalog-files-var.patch ]; + buildInputs = [ libX11 xrandr (if withGtk3 then gtk3 else gtk2) ]; - meta = with lib; { + meta = { description = "Standard screen manager of LXDE"; mainProgram = "lxrandr"; homepage = "https://lxde.org/"; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ rawkode ]; - platforms = platforms.linux; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ rawkode ]; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/desktops/lxde/core/lxrandr/respect-xml-catalog-files-var.patch b/pkgs/desktops/lxde/core/lxrandr/respect-xml-catalog-files-var.patch new file mode 100644 index 000000000000..598f506118f2 --- /dev/null +++ b/pkgs/desktops/lxde/core/lxrandr/respect-xml-catalog-files-var.patch @@ -0,0 +1,15 @@ +diff --git a/acinclude.m4 b/acinclude.m4 +index be626c5..b449b1b 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -40,8 +40,8 @@ AC_DEFUN([JH_CHECK_XML_CATALOG], + [ + AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl + AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) +- if $jh_found_xmlcatalog && \ +- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then ++ # empty argument forces libxml to use XML_CATALOG_FILES variable ++ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then + AC_MSG_RESULT([found]) + ifelse([$3],,,[$3 + ])dnl diff --git a/pkgs/desktops/lxde/core/lxsession/default.nix b/pkgs/desktops/lxde/core/lxsession/default.nix index ab6b77429d9a..2395e96c45db 100644 --- a/pkgs/desktops/lxde/core/lxsession/default.nix +++ b/pkgs/desktops/lxde/core/lxsession/default.nix @@ -1,10 +1,8 @@ { lib, stdenv, - fetchpatch, fetchFromGitHub, - autoconf, - automake, + autoreconfHook, docbook_xml_dtd_412, docbook_xsl, intltool, @@ -18,39 +16,26 @@ vala, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lxsession"; - version = "0.5.5"; + version = "0.5.6"; src = fetchFromGitHub { owner = "lxde"; repo = "lxsession"; - rev = version; - sha256 = "17sqsx57ymrimm5jfmcyrp7b0nzi41bcvpxsqckmwbhl19g6c17d"; + tag = finalAttrs.version; + hash = "sha256-3RnRF4oMCtZbIraHVqEPnkviAkELq7uYqyHY0uCf/lU="; }; - patches = [ - ./xmlcatalog_patch.patch - - # lxsession compilation is broken upstream as of GCC 14 - # https://sourceforge.net/p/lxde/bugs/973/ - (fetchpatch { - name = "0001-Fix-build-on-GCC-14.patch"; - url = "https://sourceforge.net/p/lxde/bugs/973/attachment/0001-Fix-build-on-GCC-14.patch"; - hash = "sha256-lxF3HZy5uLK7Cfu8W1A03syZf7OWXpHiU2Fk+xBl39g="; - }) - ]; - nativeBuildInputs = [ - autoconf - automake - docbook_xml_dtd_412 - docbook_xsl + autoreconfHook intltool libxml2 libxslt pkg-config wrapGAppsHook3 + docbook_xml_dtd_412 + docbook_xsl ]; buildInputs = [ @@ -64,16 +49,20 @@ stdenv.mkDerivation rec { "--enable-man" "--disable-buildin-clipboard" "--disable-buildin-polkit" - "--with-xml-catalog=${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml" ]; - preConfigure = "./autogen.sh"; + postPatch = '' + mkdir -p m4 + ''; - meta = with lib; { + patches = [ ./repect-xml-catalog-file-var.patch ]; + + meta = { homepage = "https://wiki.lxde.org/en/LXSession"; description = "Classic LXDE session manager"; - license = licenses.gpl2Plus; - maintainers = [ maintainers.shamilton ]; - platforms = platforms.linux; + license = lib.licenses.gpl2Plus; + maintainers = [ lib.maintainers.shamilton ]; + platforms = lib.platforms.linux; + mainProgram = "lxsession"; }; -} +}) diff --git a/pkgs/desktops/lxde/core/lxsession/repect-xml-catalog-file-var.patch b/pkgs/desktops/lxde/core/lxsession/repect-xml-catalog-file-var.patch new file mode 100644 index 000000000000..330bdcb72550 --- /dev/null +++ b/pkgs/desktops/lxde/core/lxsession/repect-xml-catalog-file-var.patch @@ -0,0 +1,13 @@ +--- a/acinclude.m4 2025-08-24 00:39:08.807857027 +0200 ++++ b/acinclude.m4 2025-08-24 00:49:23.043780737 +0200 +@@ -40,8 +40,8 @@ + [ + AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl + AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) +- if $jh_found_xmlcatalog && \ +- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then ++ # empty argument forces libxml to use XML_CATALOG_FILES variable ++ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then + AC_MSG_RESULT([found]) + ifelse([$3],,,[$3 + ])dnl diff --git a/pkgs/desktops/lxde/core/lxsession/xmlcatalog_patch.patch b/pkgs/desktops/lxde/core/lxsession/xmlcatalog_patch.patch deleted file mode 100644 index 644518a6eb2a..000000000000 --- a/pkgs/desktops/lxde/core/lxsession/xmlcatalog_patch.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --color -ur a/configure.ac b/configure.ac ---- a/configure.ac 2021-01-18 12:39:19.556844678 +0100 -+++ b/configure.ac 2021-01-18 17:26:47.989410501 +0100 -@@ -167,18 +167,7 @@ - AM_GLIB_GNU_GETTEXT - AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.]) - --if test x"$enable_man" = x"yes"; then -- AC_PATH_PROG([XSLTPROC], [xsltproc]) -- if test -z "$XSLTPROC"; then -- enable_man=no -- fi -- -- dnl check for DocBook DTD and stylesheets in the local catalog. -- JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN], -- [DocBook XML DTD V4.1.2], [], enable_man=no) -- JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl], -- [DocBook XSL Stylesheets >= 1.70.1], [], enable_man=no) --fi -+AC_PATH_PROG([XSLTPROC], [xsltproc]) - - AM_CONDITIONAL(ENABLE_REGENERATE_MAN, test "x$enable_man" != "xno") - diff --git a/pkgs/desktops/lxde/core/lxtask/default.nix b/pkgs/desktops/lxde/core/lxtask/default.nix index 84e1b76ad428..4f83726c5b43 100644 --- a/pkgs/desktops/lxde/core/lxtask/default.nix +++ b/pkgs/desktops/lxde/core/lxtask/default.nix @@ -10,14 +10,14 @@ gitUpdater, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lxtask"; version = "0.1.12"; src = fetchFromGitHub { owner = "lxde"; repo = "lxtask"; - rev = version; + tag = finalAttrs.version; hash = "sha256-BI50jV/17jGX91rcmg98+gkoy35oNpdSSaVDLyagbIc="; }; @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { passthru.updateScript = gitUpdater { }; - meta = with lib; { + meta = { homepage = "https://lxde.sourceforge.net/"; description = "Lightweight and desktop independent task manager"; mainProgram = "lxtask"; @@ -47,8 +47,8 @@ stdenv.mkDerivation rec { Desktop Environment, it's totally desktop independent and only requires pure GTK. ''; - license = licenses.gpl2Plus; - platforms = platforms.unix; - maintainers = [ maintainers.romildo ]; + license = lib.licenses.gpl2Plus; + platforms = lib.platforms.unix; + maintainers = [ lib.maintainers.romildo ]; }; -} +})