Topic: LXDE can run on Hyperbola without problemtic dependencies
UPD 2026-02-26 23:37 UTC+8: All functions (including power buttons) in lxde should work well now. All functions (except trash can) in other packages should work well too. See new PKGBUILDS below.
All functions except power buttons should work well, and all of them can be run on Hyperbola GNU/Linux-libre and probably HyperbolaBSD.
Let the power buttons use doas to shutdown/reboot the machine is a work in progress.
Here is my PKGBUILDs, which may help Hyperbola:
Note 1: This is my first time making PKGBUILDs. If there are problems, please tell me and I can help solve these problems.
Note 2: Some LXDE programs (including lxterminal and lxtask) are already in Hyperbola's repo, so I don't provide them in these files.
libfm-extra/fix-without-gtk-doc.patch:
--- libfm-1.4.1/Makefile.am
+++ libfm-1.4.1/Makefile.am
@@ -4,11 +4,9 @@
DIST_SUBDIRS = src po data
-# a little trick against gtk-doc is here
SUBDIRS_DOCS = docs
EXTRA_DIST_DOCS = \
- gtk-doc.make \
docs/Makefile.am \
docs/Makefile.in \
docs/reference/Makefile.am \
@@ -35,12 +33,7 @@
po/libfm.pot \
$(NULL)
-if ENABLE_GTK_DOC
-DIST_SUBDIRS += $(SUBDIRS_DOCS)
-SUBDIRS += $(SUBDIRS_DOCS)
-else
EXTRA_DIST += $(EXTRA_DIST_DOCS)
-endif
pkgconfig_DATA += \
libfm.pc \
@@ -48,4 +41,4 @@
$(NULL)
endif
-DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
+DISTCHECK_CONFIGURE_FLAGS=--disable-gtk-doclibfm-extra/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Unknown47 <unknown47r@gmail.com>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=libfm-extra
pkgver=1.4.1
pkgrel=1
pkgdesc='Extra library for file management'
arch=(i686 x86_64)
url='https://github.com/lxde/libfm'
license=('LGPL-2.1 OR GPL-2.0')
depends=(
cairo
gdk-pixbuf2
glib2
glibc
gtk3
libexif
pango
)
makedepends=(
glib2
intltool
vala
gettext-tiny
)
source=(https://github.com/lxde/libfm/archive/refs/tags/$pkgver.tar.gz
fix-without-gtk-doc.patch)
sha512sums=('9819e1844667eb7a95db493f8a346c303eaca95ed78479bedd8cf33330e8e1720b03e484db57b29c4a2e2e1b068f11e1a55c8962dec288e9b0902f5d71f14c47'
'034d54a4dbe77bd9e52dbb73ece87bfb18ab5bf72c2b6287f6750aa0c68faa0714869ce93108b4e3f7ce0d19b5c4da05dc549c3edbcefdc217b8618f34b10610')
prepare() {
cd libfm-$pkgver
patch -p1 < "${srcdir}/fix-without-gtk-doc.patch"
echo > docs/reference/libfm/Makefile.am
sed -i '/GTK_DOC_CHECK/d' configure.ac
autoreconf -fi
intltoolize
}
build() {
cd libfm-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-gtk-doc \
--with-gnu-ld \
--with-gtk=3 \
--with-extra-only # Hack to avoid circular dependencies
make
}
package() {
depends=(
glib2
glibc
)
cd libfm-$pkgver
make DESTDIR="$pkgdir" install
# Fix for FS#32361
rm -rf "$pkgdir"/usr/include/libfm
mv "$pkgdir"/usr/include/libfm-1.0/ "$pkgdir"/usr/include/libfm
# Split libfm-extra
[[ -d "$srcdir/libfm-extra" ]] && rm -r "$srcdir/libfm-extra/"
mkdir "$srcdir"/libfm-extra
mv "$pkgdir"/usr/include/libfm/fm-{extra,version,xml-file}.h \
"$pkgdir"/usr/lib/libfm-extra.* \
"$pkgdir"/usr/lib/pkgconfig/libfm-extra.pc \
"$srcdir/libfm-extra/"
rm -rf "$pkgdir"/*
cd "$srcdir"/libfm-extra
mkdir -p "$pkgdir"/usr/{include/libfm,lib/pkgconfig}
mv *.h "$pkgdir/usr/include/libfm"
mv libfm-extra.so* "$pkgdir/usr/lib"
mv libfm-extra.pc "$pkgdir/usr/lib/pkgconfig"
install -Dm644 "$srcdir/libfm-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}menu-cache/fix-without-gtk-doc.patch:
--- libfm-1.4.1/Makefile.am
+++ libfm-1.4.1/Makefile.am
@@ -7,7 +7,6 @@
SUBDIRS_DOCS = docs
EXTRA_DIST_DOCS = \
- gtk-doc.make \
docs/Makefile.am \
docs/Makefile.in \
docs/reference/Makefile.am \
@@ -28,11 +27,6 @@
EXTRA_DIST = \
$(NULL)
-if ENABLE_GTK_DOC
-DIST_SUBDIRS += $(SUBDIRS_DOCS)
-SUBDIRS += $(SUBDIRS_DOCS)
-else
EXTRA_DIST += $(EXTRA_DIST_DOCS)
-endif
-DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
+DISTCHECK_CONFIGURE_FLAGS=--disable-gtk-docmenu-cache/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=menu-cache
pkgver=1.1.1
pkgrel=2
pkgdesc='Caching mechanism for freedesktop.org compliant menus'
arch=(x86_64)
url='https://github.com/lxde/menu-cache'
license=(LGPL-2.1)
depends=(
glib2
glibc
libfm-extra
)
makedepends=(
gettext-tiny
)
source=(https://github.com/lxde/menu-cache/archive/refs/tags/$pkgver.tar.gz
fix-without-gtk-doc.patch)
sha512sums=('a2ede5663946d13a2992196a8547319ffa252cf5e37ba76dad559deb18450797ac6d5910415226ab996eab2131a2aa715b091a023a8a1eb39c83ea47043976e1'
'999e6e1bf11bf9dccb51432c43d7321fcfb66ab270487976f313695fc8460a987049e2fafea684eebc4bb8e8030501458f190c72dd26e5e2db1e7750e712aede')
prepare() {
cd $pkgname-$pkgver
patch -p1 < "${srcdir}/fix-without-gtk-doc.patch"
echo > docs/reference/libmenu-cache/Makefile.am
sed -i '/ENABLE_GTK_DOC/d' configure.ac
libtoolize --force
autoreconf -fi
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib \
--disable-gtk-doc
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}libfm/fix-without-gtk-doc.patch: is the same as libfm-extra/fix-without-gtk-doc.patch.
libfm/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Unknown47 <unknown47r@gmail.com>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgbase=libfm
pkgname=(
libfm
libfm-gtk3
)
pkgver=1.4.1
pkgrel=1
pkgdesc='Library for file management'
arch=(i686 x86_64)
url='https://github.com/lxde/libfm'
license=('LGPL-2.1 OR GPL-2.0')
depends=(
cairo
gdk-pixbuf2
glib2
glibc
gtk3
libexif
menu-cache
pango
)
makedepends=(
glib2
intltool
vala
gettext-tiny
)
source=(https://github.com/lxde/libfm/archive/refs/tags/$pkgver.tar.gz
fix-without-gtk-doc.patch)
sha512sums=('9819e1844667eb7a95db493f8a346c303eaca95ed78479bedd8cf33330e8e1720b03e484db57b29c4a2e2e1b068f11e1a55c8962dec288e9b0902f5d71f14c47'
'034d54a4dbe77bd9e52dbb73ece87bfb18ab5bf72c2b6287f6750aa0c68faa0714869ce93108b4e3f7ce0d19b5c4da05dc549c3edbcefdc217b8618f34b10610')
prepare() {
cd $pkgname-$pkgver
patch -p1 < "${srcdir}/fix-without-gtk-doc.patch"
echo > docs/reference/libfm/Makefile.am
sed -i '/GTK_DOC_CHECK/d' configure.ac
autoreconf -fi
intltoolize
}
build() {
cd $pkgbase-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-gtk-doc \
--with-gnu-ld \
--with-gtk=3
make
}
package_libfm() {
depends=(
glib2
glibc
libexif
"libfm-extra=$pkgver"
menu-cache
)
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
# Fix for FS#32361
rm -rf "$pkgdir"/usr/include/libfm
mv "$pkgdir"/usr/include/libfm-1.0/ "$pkgdir"/usr/include/libfm
# Split libfm-extra
[[ -d "$srcdir/libfm-extra" ]] && rm -r "$srcdir/libfm-extra/"
mkdir "$srcdir"/libfm-extra
mv "$pkgdir"/usr/include/libfm/fm-{extra,version,xml-file}.h \
"$pkgdir"/usr/lib/libfm-extra.* \
"$pkgdir"/usr/lib/pkgconfig/libfm-extra.pc \
"$srcdir/libfm-extra/"
# Split libfm-gtk3
[[ -d "$srcdir/libfm-gtk3" ]] && rm -r "$srcdir/libfm-gtk3/"
mkdir "$srcdir"/libfm-gtk3
mv "$pkgdir/usr/bin" \
"$pkgdir"/usr/lib/libfm-gtk3.* \
"$pkgdir"/usr/lib/libfm/modules/gtk-* \
"$pkgdir/usr/lib/pkgconfig/libfm-gtk3.pc" \
"$pkgdir/usr/share/applications" \
"$pkgdir/usr/share/man" \
"$srcdir/libfm-gtk3/"
install -Dm644 "$srcdir/$pkgbase-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}
package_libfm-gtk3() {
pkgdesc='GTK library for file management'
depends=(
cairo
gdk-pixbuf2
glib2
glibc
gtk3
"libfm=$pkgver"
menu-cache
pango
)
cd "$srcdir"/libfm-gtk3
mkdir -p "$pkgdir"/usr/{lib/{libfm/modules,pkgconfig},share}
mv bin "$pkgdir/usr"
mv libfm-gtk3.so* "$pkgdir"/usr/lib
mv gtk-* "$pkgdir"/usr/lib/libfm/modules
mv libfm-gtk3.pc "$pkgdir/usr/lib/pkgconfig"
mv applications "$pkgdir/usr/share"
mv man "$pkgdir/usr/share"
install -Dm644 "$srcdir/$pkgbase-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxmenu-data/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=lxmenu-data
pkgver=0.1.7
pkgrel=1
pkgdesc='Freedesktop.org desktop menus for LXDE'
arch=(any)
url='https://github.com/lxde/lxmenu-data'
license=(LGPL-2.1)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxmenu-data/archive/refs/tags/$pkgver.tar.gz)
sha512sums=(2847a2a033e53a8d9c6f8279668c261cef7743d8a621411c768b434957912a7b6334cb24d9147246da7e31f242bb1f71f5cf95d570ceeb7642f486c6f5a5577d)
prepare() {
cd $pkgname-$pkgver
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}pcmanfs/pcmanfm-desktop-onlyshowin.patch:
From f85b2d98cbde4c102bc60654cb2a53f19ec68100 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Tue, 21 Oct 2025 04:25:46 +0200
Subject: [PATCH] Show desktop preferences entry only in LXDE
Most desktop environments have their own desktop icons nowadays,
and PCManFM is used only in LXDE by default.
---
data/pcmanfm-desktop-pref.desktop.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/data/pcmanfm-desktop-pref.desktop.in b/data/pcmanfm-desktop-pref.desktop.in
index 4f42849d..abbd1b7c 100644
--- a/data/pcmanfm-desktop-pref.desktop.in
+++ b/data/pcmanfm-desktop-pref.desktop.in
@@ -7,4 +7,4 @@ Categories=Settings;GTK;DesktopSettings;X-LXDE-Settings;
Exec=pcmanfm --desktop-pref
StartupNotify=true
Terminal=false
-NotShowIn=GNOME;XFCE;KDE;MATE;
+OnlyShowIn=LXDE;pcmanfs/pcmanfm-transient-dialog.patch:
From d15487557829a5edb2c7c0a66db6266960cb84a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 15 Oct 2025 10:39:25 +0200
Subject: [PATCH] Make the about dialog transient for the main window
This ensures that it's attached to it.
---
src/main-win.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/main-win.c b/src/main-win.c
index 49fc53b8..1562e68f 100644
--- a/src/main-win.c
+++ b/src/main-win.c
@@ -1159,6 +1159,7 @@ static void on_about(GtkAction* act, FmMainWin* win)
gtk_about_dialog_set_comments(about_dlg, comments->str);
g_string_free(comments, TRUE);
g_object_unref(builder);
+ gtk_window_set_transient_for(GTK_WINDOW(about_dlg), GTK_WINDOW(win));
g_signal_connect(about_dlg, "response", G_CALLBACK(on_about_response), (gpointer)&about_dlg);
pcmanfm_ref();
}pcmanfs/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Unknown47 <unknown47r@gmail.com>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=pcmanfm
pkgver=1.4.0
pkgrel=2
pkgdesc='Extremely fast and lightweight file manager'
arch=(x86_64)
url='https://github.com/lxde/pcmanfm'
license=(GPL-2.0)
depends=(
cairo
gdk-pixbuf2
glib2
glibc
gtk3
libfm
libfm-gtk3
libx11
lxmenu-data
pango
)
makedepends=(
intltool
gettext-tiny
)
optdepends=(
'xarchiver: Archive management'
)
source=(https://github.com/lxde/pcmanfm/archive/refs/tags/$pkgver.tar.gz
pcmanfm-transient-dialog.patch
pcmanfm-desktop-onlyshowin.patch)
sha512sums=(87192134e18a7d6e9755b65f7d72910854f6c2ddbc1e391449c992f0596dc4ddbf37925070b6e502afea49b95361939d4272156ef55be1731411593e91d4c5a5
5817c6ecd3a41017b01f1adba0e8797833d8686619255d90caca5ea270c851ba3585a722c0ad76756e2132c86a5477aea9e57b92c1fa29dc4041087cdd9ebab8
e228aae21cdf7b4f12e678c14f52212dffab42d6f9cf26d261bc174cf33c3ccc51f7a755a33e6266e28a5081fe41744d00b9318de106f4b5f2430048a52cc270)
prepare() {
cd $pkgname-$pkgver
# https://github.com/lxde/pcmanfm/pull/32
patch -p1 < ../pcmanfm-transient-dialog.patch
# https://github.com/lxde/pcmanfm/pull/34
patch -p1 < ../pcmanfm-desktop-onlyshowin.patch
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-gtk=3
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxappearance/lxappearance-builtin-themes.patch:
From 402f1a9d0bb9b98df7eefe5fe7e2b880d90fffe1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 22 Oct 2025 22:21:19 +0200
Subject: [PATCH] Add builtin GTK3 themes to the list
GTK3 has some internal themes that was not listed on the widget theme
selection dialog.
---
src/widget-theme.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/widget-theme.c b/src/widget-theme.c
index 728e79e..01a6b2f 100644
--- a/src/widget-theme.c
+++ b/src/widget-theme.c
@@ -74,6 +74,13 @@ static void load_themes()
GtkTreeIter sel_it = {0};
GtkTreeSelection* tree_sel;
+#if GTK_CHECK_VERSION(3, 0, 0)
+ /* add built-in themes */
+ themes = g_slist_append(themes, g_strdup("Adwaita"));
+ themes = g_slist_append(themes, g_strdup("HighContrast"));
+ themes = g_slist_append(themes, g_strdup("HighContrastInverse"));
+#endif
+
/* load from userdata theme dir first */
dir = g_build_filename(g_get_user_data_dir(), "themes", NULL);
themes = load_themes_in_dir(dir, themes);lxappearance/lxappearance-theme-name.patch:
From 74b4acdec360d4e0606dc643b24efa2664f20c7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 22 Oct 2025 22:18:42 +0200
Subject: [PATCH] Read icon theme name even if it's hidden
Without this, the display name became NULL for the cursor theme if the
corresponding icon theme is hidden.
---
src/icon-theme.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/src/icon-theme.c b/src/icon-theme.c
index cda5c72..7b597f5 100644
--- a/src/icon-theme.c
+++ b/src/icon-theme.c
@@ -83,13 +83,12 @@ void load_icon_themes_from_dir(const char* base_dir, const char* theme_dir, GKey
if(g_key_file_load_from_file(kf, index_theme, 0, NULL))
{
+ theme->disp_name = g_key_file_get_locale_string(kf, "Icon Theme", "Name", NULL, NULL);
+ theme->comment = g_key_file_get_locale_string(kf, "Icon Theme", "Comment", NULL, NULL);
+
/* skip hidden ones */
if(!g_key_file_get_boolean(kf, "Icon Theme", "Hidden", NULL))
{
- theme->disp_name = g_key_file_get_locale_string(kf, "Icon Theme", "Name", NULL, NULL);
- /* test if this is a icon theme or it's a cursor theme */
- theme->comment = g_key_file_get_locale_string(kf, "Icon Theme", "Comment", NULL, NULL);
-
/* icon theme must have this key, so it has icons if it has this key */
theme->has_icon = g_key_file_has_key(kf, "Icon Theme", "Directories", NULL);
}lxappearance/lxappearance-transient-dialog.patch:
From fcafbe91061d38e03b251c57d1af4c036a5fa757 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 22 Oct 2025 20:48:27 +0200
Subject: [PATCH] Make the about dialog transient for the main window
This ensures that it's attached to it.
---
src/lxappearance.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/lxappearance.c b/src/lxappearance.c
index 3f677ab..f705f61 100644
--- a/src/lxappearance.c
+++ b/src/lxappearance.c
@@ -556,6 +556,7 @@ static void on_dlg_response(GtkDialog* dlg, int res, gpointer user_data)
if(gtk_builder_add_from_file(b, PACKAGE_UI_DIR "/about.ui", NULL))
{
GtkWidget* dlg = GTK_WIDGET(gtk_builder_get_object(b, "dlg"));
+ gtk_window_set_transient_for(GTK_WINDOW(dlg), GTK_WINDOW(app.dlg));
gtk_dialog_run(GTK_DIALOG(dlg));
gtk_widget_destroy(dlg);
}lxappearance/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Geoffroy Carrier <geoffroy.carrier@koon.fr>
# Contributor: Allen123456hello
pkgname=lxappearance
pkgver=0.6.4
pkgrel=3
pkgdesc='Feature-rich GTK theme switcher of the LXDE Desktop'
arch=(x86_64)
url='https://github.com/lxde/lxappearance'
license=(GPL-2.0)
depends=(
gdk-pixbuf2
glib2
glibc
gtk3
libx11
)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxappearance/archive/refs/tags/$pkgver.tar.gz
lxappearance-theme-name.patch
lxappearance-builtin-themes.patch
lxappearance-transient-dialog.patch)
sha512sums=(cf8a71fe546a3f9a11856d1290825c0433a64eb59c65298bc6e8a4742154ec6b9a901ee126b1303ec18f6c7f8c4875b20993c53f8f226d934c1c7406beac5f64
d23f26a8409d8223b1978087b60ecabb350f3945185f6d7781e640eb0b81adeaf050fde291284cd5b913d391646ee12f35ef22552b1e2c9035f3ff1d6842370c
9a7600acf8912accde115666f0eaade5f4ffbbf5190835612d32bbc62564e741dc012ac3ce214b580a772a803b872f2da304ddd394614d325bbf3e2241f19989
a7e30879249f4bbe25cb09d2b7f0f7d5afdc372e869d433a751642554b9968be36e6080c5ad1bb7e4e5828aa0ef68c855ff218229c9ccfaf9d332479803f2f30)
prepare() {
cd $pkgname-$pkgver
# https://github.com/lxde/lxappearance/pull/15
patch -p1 < ../lxappearance-theme-name.patch
# https://github.com/lxde/lxappearance/pull/16
patch -p1 < ../lxappearance-builtin-themes.patch
# https://github.com/lxde/lxappearance/pull/17
patch -p1 < ../lxappearance-transient-dialog.patch
# # https://github.com/lxde/lxappearance/pull/20
# patch -p1 < ../lxappearance-notshowin.patch # Not useful with Hyperbola
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-dbus \
--enable-gtk3
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxappearance-obconf/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Allen123456hello
pkgname=lxappearance-obconf
pkgver=0.2.4
pkgrel=3
pkgdesc='Plugin for LXAppearance to configure Openbox'
arch=(x86_64)
url='https://github.com/lxde/lxappearance-obconf'
license=(GPL-2.0)
depends=(
cairo
gdk-pixbuf2
glib2
glibc
gtk3
libx11
libxml2
lxappearance
openbox
)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxappearance-obconf/archive/refs/tags/$pkgver.tar.gz)
sha512sums=(802be16b392da1d2be702189278e5cbadcc5591f08c6e408a8a5ce943f09d381b7db54f69efe9fb175f3dd832bc575e9f9756143ab9f5403d2ae52980a5d7634)
prepare() {
cd $pkgname-$pkgver
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-gtk3 \
--disable-dbus
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxde-common/default-config.patch:
diff -Naur lxde-common-0.99.1.orig/desktop.conf lxde-common-0.99.1/desktop.conf
--- lxde-common-0.99.1.orig/desktop.conf 2016-02-26 14:51:28.558478250 +0000
+++ lxde-common-0.99.1/desktop.conf 2016-02-26 14:52:20.038264394 +0000
@@ -2,7 +2,7 @@
window_manager=openbox-lxde
[GTK]
-sNet/ThemeName=Clearlooks
+sNet/ThemeName=Adwaita
sNet/IconThemeName=nuoveXT2
sGtk/FontName=Sans 10
iGtk/ToolbarStyle=3lxde-common/without-dbus.patch:
--- lxde-common-0.99.3/startlxde.in
+++ lxde-common-0.99.3/startlxde.in
@@ -33,13 +33,6 @@
# Enable GTK+2 integration for OpenOffice.org, if available.
export SAL_USE_VCLPLUGIN=gtk
-# Launch DBus if needed
-if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
- if test -z "$XDG_RUNTIME_DIR" -o ! -S "$XDG_RUNTIME_DIR/bus" -o ! -O "$XDG_RUNTIME_DIR/bus"; then
- eval "$(dbus-launch --sh-syntax --exit-with-session)"
- fi
-fi
-
export XDG_MENU_PREFIX="lxde-"
export XDG_CURRENT_DESKTOP="LXDE"
--- lxde-common-0.99.3/man/startlxde.1
+++ lxde-common-0.99.3/man/startlxde.1
@@ -10,7 +10,7 @@
.SH DESCRIPTION
.PP
\fBstartlxde\fP is used to start the desktop session of LXDE.
-By default it loads openbox, lxpanel, pcmanfm, dbus-launch, and lxsession.
+By default it loads openbox, lxpanel, pcmanfm and lxsession.
.SH AUTHOR
Hong Jen Yee <pcman.tw@gmail.com>lxde-common/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=lxde-common
pkgver=0.99.3
pkgrel=2
pkgdesc='Common files of the LXDE Desktop'
arch=(any)
url='https://github.com/lxde/lxde-common'
license=(GPL-2.0)
depends=(bash)
makedepends=(
intltool
gettext-tiny
)
backup=(
etc/xdg/lxpanel/LXDE/config
etc/xdg/lxpanel/LXDE/panels/panel
etc/xdg/lxsession/LXDE/autostart
etc/xdg/lxsession/LXDE/desktop.conf
etc/xdg/openbox/LXDE/menu.xml
etc/xdg/openbox/LXDE/rc.xml
etc/xdg/pcmanfm/LXDE/pcmanfm.conf
)
source=(https://github.com/lxde/lxde-common/archive/refs/tags/$pkgver.tar.gz
without-dbus.patch
default-config.patch)
sha512sums=(a4d5a95405986cd8d89ada79e19b678a186ebab8cbf5de54ae5bd823caa7ae0c9e85c526d3ce3d9f5831b67f7953f60b7f801907f15358241a88b2d6f8e49fad
f528fce9e80806a836126dd24ea8b99e883462613da2e4f5f09f612f412706c9bf3ab4c0230b3ea5c441d4e25dc921bdb914976beee648e5cfb067efb75d5d9f
ea0cab413f060bfed8b76d3e0b1cac3b74cbfbbd852d823ff2e610e4816b3f5fb500979f3def6737c467650ece0ed47d6d56a09711309eb007b5b4f1ed8d6a3e)
prepare() {
cd $pkgname-$pkgver
# No dbus + systemd support
# patch -Np1 -i ../dbus-update-environment.patch
# Remove optional dbus support
patch -Np1 -i ../without-dbus.patch
# Set Adwaita as default GTK theme
patch -Np1 -i ../default-config.patch
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-dbus
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxde-icon-theme/lxde-icon-theme-adwaita-inherit.patch:
From bec9817c932f93f1641297c8fc7454bb5dfc0a43 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 15 Oct 2025 13:59:24 +0200
Subject: [PATCH] Inherit from Adwaita theme
Adding "Adwaita" icon theme to "Inherits" fixes some missing symbolic icons
in GNOME (GTK4) applications (e.g. sidebar in Nautilus), while adding
"AdwaitaLegacy" before that causes the non-symbolic variants are used
instead of symbolic ones unless it's explicitly requested (e.g. rotation
and mirror icons in GPicView).
---
nuoveXT2/index.theme | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/nuoveXT2/index.theme b/nuoveXT2/index.theme
index 6726e22..6bc0ff9 100644
--- a/nuoveXT2/index.theme
+++ b/nuoveXT2/index.theme
@@ -1,7 +1,7 @@
[Icon Theme]
Name=nuoveXT.2.2
Comment=nuoveXT 2.2 Icon Theme for LXDE
-Inherits=nuoveXT-1.6,Tango,gnome,crystalsvg
+Inherits=nuoveXT-1.6,Tango,AdwaitaLegacy,Adwaita,gnome,crystalsvg
Example=x-directory-normal
# KDE Specific Stufflxde-icon-theme/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=lxde-icon-theme
pkgver=0.5.2
pkgrel=2
pkgdesc='LXDE default icon theme based on nuoveXT2'
arch=(any)
url='https://github.com/lxde/lxde-icon-theme'
license=(LGPL-3.0)
source=(https://github.com/lxde/lxde-icon-theme/archive/refs/tags/$pkgver.tar.gz
lxde-icon-theme-adwaita-inherit.patch)
sha512sums=(36d72e1214ad73c56212eae893af250dde181c2e1c14b36327abc4628ab5432330e1cb86a0c33c5f559898d230ba498c60128f4a07fa98b2b467a719be242d33
f4b4b1b32d7002a5ddbf7dc9f91df57b47bbf3913989c56031767cf3f0fd2a61423db540650475da044e2747c4980fa5bc5e0b1649cb27fb92875546112b4299)
prepare() {
cd $pkgname-$pkgver
# https://github.com/lxde/lxde-icon-theme/pull/1
patch -p1 < ../lxde-icon-theme-adwaita-inherit.patch
autoreconf -fi
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxhotkey/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor: Allen123456hello
pkgname=lxhotkey
pkgver=0.1.2
pkgrel=3
pkgdesc='Keyboard shortcuts configurator (part of LXDE)'
arch=(x86_64)
license=(GPL-2.0)
url='https://github.com/lxde/lxhotkey'
depends=(
glib2
glibc
gtk3
libfm
libfm-extra
libunistring
libx11
)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxhotkey/archive/refs/tags/$pkgver.tar.gz)
sha512sums=(adfa4b0c2108b7cc0822bf71b3520c614f9c12b5adc356bd939bb30fec5510a14f0f94dcb17f3ecca4f79ce2dfe56337a85091e4566cdf75fab12d574a07e60b)
prepare() {
cd $pkgname-$pkgver
# # https://github.com/lxde/lxhotkey/pull/16
# git apply -3 ../lxhotkey-notshowin.patch # Not useful with hyperbola
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-gtk=3
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package_lxhotkey() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxinput/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Filipp "Scorp" Andjelo <scorp@mailueberfall.de>
# Contributor: Allen123456hello
pkgname=lxinput
pkgver=0.3.6
pkgrel=3
pkgdesc='Small program to configure keyboard and mouse for LXDE'
arch=(x86_64)
url='https://github.com/lxde/lxinput'
license=(GPL-2.0)
depends=(
glib2
glibc
gtk3
libx11
xenocara-xmodmap
xenocara-xset
)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxinput/archive/refs/tags/$pkgver.tar.gz)
sha512sums=(8585862256699efe1537e5f2fb3eeca0c71501a790d322cf975cf3ff1f843a757d809bceeac82076b81debd60a9e9dff133157de28fdda08fa8d666f4b656b54)
prepare() {
cd $pkgname-$pkgver
# # https://github.com/lxde/lxinput/pull/3
# git apply -3 ../lxinput-notshowin.patch # Not useful with Hyperbola
# # https://github.com/lxde/lxinput/pull/4
# git apply -3 ../lxinput-x11-only.patch # Not useful with Hyperbola
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-gtk3
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxpanel/lxpanel-fix-variable.patch:
From 8e8e2cfc0808d3bda9b7c73b9e7b2c15eccf049c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
Date: Wed, 5 Nov 2025 20:53:22 +0100
Subject: [PATCH] Fix variable to get widget settings
This caused the panel to freeze when the cursor blink time was changed.
---
plugins/launchtaskbar.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/launchtaskbar.c b/plugins/launchtaskbar.c
index 3c9dc0b8..c239e73a 100644
--- a/plugins/launchtaskbar.c
+++ b/plugins/launchtaskbar.c
@@ -962,7 +962,7 @@ static void on_gtk_cursor_blink_time_changed(GObject *gsettings, GParamSpec *psp
if (tb->flash_timeout == 0) /* nothing to do? */
return;
g_source_remove(tb->flash_timeout);
- g_object_get(gtk_widget_get_settings(GTK_WIDGET(tb)), "gtk-cursor-blink-time",
+ g_object_get(gtk_widget_get_settings(GTK_WIDGET(tb->plugin)), "gtk-cursor-blink-time",
&interval, NULL);
tb->flash_timeout = g_timeout_add(interval / 2, flash_window_timeout, tb);
}lxpanel/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=lxpanel
pkgver=0.11.1
pkgrel=4
pkgdesc='Lightweight X11 desktop panel for LXDE'
arch=(x86_64)
url='https://github.com/lxde/lxpanel'
license=(GPL-2.0)
depends=(
alsa-lib
cairo
curl
gdk-pixbuf2
glib2
glibc
gtk3
libfm
libfm-gtk3
libkeybinder3
libwnck3
libx11
libxml2
lxmenu-data
menu-cache
pango
)
makedepends=(
gettext-tiny
intltool
wireless_tools
)
optdepends=('wireless_tools: netstat plugin')
source=(https://github.com/lxde/lxpanel/archive/refs/tags/$pkgver.tar.gz
lxpanel-fix-variable.patch)
sha512sums=(143e0afa28d30c596f9e1e915b3405d6266c36bd0b798ba0803b9bcd1d8be14a8363ff39505059b28d67da80f91ee04ee6682af3e1ce09e8cb194d36fafebd5b
564a15b9c7cdd16821cfc15ed86de5250c32c2fbbd667c2f822b3536d8e2d6f1368088fac2844c39f779f9c1d4f01fcabff8f60624eac3b07ce79546b983f695)
prepare() {
cd $pkgname-$pkgver
# https://github.com/lxde/lxpanel/pull/115
patch -p1 < ../lxpanel-fix-variable.patch
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-gtk3 \
--without-dbus
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxrandr/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor (Arch): Geoffroy Carrier <geoffroy.carrier@koon.fr>
# Contributor: Allen123456hello
pkgname=lxrandr
pkgver=0.3.3
pkgrel=3
pkgdesc='Monitor configuration tool (part of LXDE)'
arch=(x86_64)
url='https://github.com/lxde/lxrandr'
license=(GPL-2.0)
depends=(
glib2
glibc
gtk3
xenocara-xrandr
)
makedepends=(
intltool
gettext-tiny
)
source=(https://github.com/lxde/lxrandr/archive/refs/tags/$pkgver.tar.gz)
sha512sums=(970770dd806ab6c6cdf809caaae95ee0bf4652ef24635512078d02c6944492d0bf9204b19752bb4827b341f6fe18a96b3f48d1ca48a48e1f56cb2598b36a96c2)
prepare() {
cd $pkgname-$pkgver
# # https://github.com/lxde/lxrandr/pull/7
# git apply -3 ../lxrandr-notshowin.patch # Not useful with Hyperbola
# # https://github.com/lxde/lxrandr/pull/8
# git apply -3 ../lxrandr-x11-only.patch # Not useful with Hyperbola
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-gtk3
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgname-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}lxsession/no-polkit.patch:
--- lxsession-0.5.6/configure.ac
+++ lxsession-0.5.6/configure.ac
@@ -86,11 +86,6 @@
AC_SUBST(VALA_GTK_LIBS)
- polkit_modules="polkit-agent-1"
- PKG_CHECK_MODULES(POLKIT, [$polkit_modules])
- AC_SUBST(POLKIT_CFLAGS)
- AC_SUBST(POLKIT_LIBS)
-
AC_ARG_ENABLE(
[buildin-clipboard],
AS_HELP_STRING([--enable-buildin-clipboard],
@@ -198,7 +193,6 @@
Makefile
data/Makefile
data/ui/Makefile
- data/lxpolkit.desktop.in
man/Makefile
po/Makefile.in
])
--- lxsession-0.5.6/Makefile.am
+++ lxsession-0.5.6/Makefile.am
@@ -29,7 +29,6 @@
noinst_DATA = \
vapi/config.vapi \
vapi/lxclipboard.vapi \
- vapi/lxpolkit.vapi \
vapi/lxsession-edit.vapi \
vapi/lxsettings-daemon.vapi \
vapi/xdg-autostart.vapi \
@@ -46,7 +45,6 @@
if USE_GTK
bin_PROGRAMS += \
- lxpolkit/lxpolkit \
lxsession-db/lxsession-db \
lxsession-edit/lxsession-edit \
lxsession-logout/lxsession-logout \
@@ -92,50 +90,6 @@
lxclipboard_lxclipboard_VALAFLAGS += --define USE_GTK2
endif
-lxpolkit_lxpolkit_vala_SOURCES = \
- lxpolkit/main.vala \
- $(NULL)
-
-CLEANFILES += lxpolkit/main.c \
- lxpolkit_lxpolkit_vala.stamp \
- $(NULL)
-
-lxpolkit_lxpolkit_SOURCES = \
- $(lxpolkit_lxpolkit_vala_SOURCES) \
- lxpolkit/lxpolkit.c \
- lxpolkit/lxpolkit-listener.c \
- $(NULL)
-
-lxpolkit_lxpolkit_VALAFLAGS = \
- --vapidir=$(srcdir)/vapi \
- --pkg @VALA_GTK_LIBS@ \
- --pkg lxpolkit \
- $(NULL)
-
-lxpolkit_lxpolkit_CPPFLAGS = \
- $(GTK_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(POLKIT_CFLAGS) \
- $(ADDITIONAL_FLAGS) \
- -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
- -DPACKAGE_DATA_DIR="\"$(datadir)"\" \
- -DPACKAGE_UI_DIR="\"$(datadir)/lxsession/ui"\" \
- -include config.h -w \
- $(NULL)
-
-lxpolkit_lxpolkit_LDADD = \
- $(GTK_LIBS) \
- $(GLIB_LIBS) \
- $(POLKIT_LIBS) \
- $(X11_LIBS) \
- $(NULL)
-
-if USE_GTK3
-lxpolkit_lxpolkit_VALAFLAGS += --define USE_GTK3
-else
-lxpolkit_lxpolkit_VALAFLAGS += --define USE_GTK2
-endif
-
lxsession_db_lxsession_db_SOURCES = \
lxsession-db/main.vala \
lxsession-db/desktop-files-backend.vala \
@@ -483,8 +437,6 @@
EXTRA_DIST += \
autogen.sh \
lxclipboard/clipboard.h \
- lxpolkit/lxpolkit.h \
- lxpolkit/lxpolkit-listener.h \
lxsettings-daemon/settings-daemon.h \
lxsettings-daemon/xevent.h \
lxsettings-daemon/xsettings-common.h \
--- lxsession-0.5.6/data/ui/Makefile.am
+++ lxsession-0.5.6/data/ui/Makefile.am
@@ -3,7 +3,6 @@
# GtkBuilder UI definition files
uidir=$(datadir)/lxsession/ui
ui_DATA= \
- lxpolkit.ui \
lxsession-default-apps.ui \
lxsession-edit.ui \
$(NULL)
--- lxsession-0.5.6/data/Makefile.am
+++ lxsession-0.5.6/data/Makefile.am
@@ -10,14 +10,10 @@
lxsession-edit.desktop.in \
$(NULL)
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
-autostartdir = $(sysconfdir)/xdg/autostart
-autostart_in_files = lxpolkit.desktop.in
-autostart_DATA = $(autostart_in_files:.desktop.in=.desktop)
@INTLTOOL_DESKTOP_RULE@
DISTCLEANFILES = \
lxsession-default-apps.desktop \
lxsession-edit.desktop \
- lxpolkit.desktop \
$(NULL)
imagedir=$(datadir)/lxsession/images
--- lxsession-0.5.6/man/Makefile.am
+++ lxsession-0.5.6/man/Makefile.am
@@ -7,7 +7,6 @@
lxsession-default-terminal.1 \
lxsession-default-apps.1 \
lxsettings-daemon.1 \
- lxpolkit.1 \
lxsession-edit.1 \
lxsession-db.1 \
lxsession-xdg-autostart.1lxsession/PKGBUILD:
# Maintainer (Arch): Balló György <ballogyor+arch at gmail dot com>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Angel Velasquez <angvp@archlinux.org>
# Contributor (Arch): Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Allen123456hello
pkgname=lxsession
pkgver=0.5.6
pkgrel=2
epoch=1
pkgdesc='Lightweight X11 session manager'
arch=(x86_64)
url='https://github.com/lxde/lxsession'
license=(GPL-2.0)
depends=(
bash
cairo
gdk-pixbuf2
glib2
glibc
gtk3
libx11
which
)
makedepends=(
intltool
gettext-tiny
vala
)
conflicts=(lxpolkit)
source=(https://github.com/lxde/lxsession/archive/refs/tags/0.5.6.tar.gz
no-polkit.patch)
sha512sums=(f54e2bf802374667d7557b0129373a3972e1395a21a856e9f74535cba913ceb4b109c1856426cd4ca7f5759d158d63b7068e16d9fc6b4a2102ad89eb5abccb23
2022435758169dea02b978976dd70c754b3c4c8841053188a47f39e8b3ae6e86b8357ab4e8d0bae5f08eb69e3e8914f828cf1db5b008855ea0e8c5b18abd49a7)
prepare() {
cd $pkgname-$pkgver
patch -p1 < ../no-polkit.patch
rm -rf lxpolkit man/lxpolkit.1
# https://github.com/lxde/lxsession/pull/44
sed -i 's/^NotShowIn=.*/OnlyShowIn=LXDE;/' data/lxpolkit.desktop.in.in
mkdir m4
autoreconf -fi
intltoolize
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib \
--enable-gtk3 \
--disable-dbus \
--disable-polkit \
--disable-elogind \
--disable-buildin-polkit
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/$pkgbase-$pkgver/COPYING" -t "$pkgdir/usr/share/licenses/$pkgname"
}Happy hacking!