lxde: various updates / cleanup (#436105)

This commit is contained in:
Sandro
2025-08-30 19:56:31 +02:00
committed by GitHub
12 changed files with 170 additions and 161 deletions
+11 -18
View File
@@ -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
+3 -9
View File
@@ -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;
+19 -22
View File
@@ -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;
};
}
})
@@ -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 ];
};
}
})
@@ -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;
};
}
})
+12 -21
View File
@@ -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";
};
})
+30 -12
View File
@@ -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;
};
}
})
@@ -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
+19 -30
View File
@@ -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";
};
}
})
@@ -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
@@ -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")
+7 -7
View File
@@ -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 ];
};
}
})