diff options
Diffstat (limited to 'lxde-base')
6 files changed, 170 insertions, 0 deletions
diff --git a/lxde-base/lxsession/Manifest b/lxde-base/lxsession/Manifest index cfc6210a2a7e..35eaf964a054 100644 --- a/lxde-base/lxsession/Manifest +++ b/lxde-base/lxsession/Manifest @@ -1 +1,2 @@ DIST lxsession-0.4.9.2.tar.gz 745637 SHA256 eff03e573b561cabe81c5d015d825e3d998e98d6621040113d7df471c8b9cfb4 SHA512 cffcd15faab79ad165f969edf65b6b106c5b4405b78e6c102a74ab96da9cf61b781d0be7587849ce56672ae3015e8f63bc1b84465f5ec0084c299ec588992172 WHIRLPOOL 5a5c172cda30a4690d82a4a8acd3b983cbcc60ed71fefdfbfbb97e8b4363f4c26825267a0bd45c71589c2dd180f9699a2d05dd759fe23bcfdd5e9d3a10ccdda2 +DIST lxsession-0.5.2.tar.xz 354092 SHA256 2d55e9ea80057fe5ffd68a91a15bb004ad7bf019e50807a8bb9b342115efaada SHA512 2e08e5263bb4ef9d8051e84997347a12d2f1ba75cf4e70f9e3ba783a509246f0d6efd672ac1cc1d0fffc8707710ddb148298449b5365deb6785623d596bc3da1 WHIRLPOOL 720144b89c7719b283478427d5858ee0de8ca25dce77a19eef1646983c22927b3af079ec24f218b92141b77c414ebf7f85e4f863e47646b29fccb96d94586ce7 diff --git a/lxde-base/lxsession/files/lxsession-0.5.2-fix-invalid-memcpy.patch b/lxde-base/lxsession/files/lxsession-0.5.2-fix-invalid-memcpy.patch new file mode 100644 index 000000000000..672889997688 --- /dev/null +++ b/lxde-base/lxsession/files/lxsession-0.5.2-fix-invalid-memcpy.patch @@ -0,0 +1,20 @@ +--- lxsession-0.5.2/lxsession-edit/lxsession-edit-common.c.memmove 2014-10-05 08:49:49.000000000 +0900 ++++ lxsession-0.5.2/lxsession-edit/lxsession-edit-common.c 2016-02-15 19:21:23.780783021 +0900 +@@ -216,7 +216,7 @@ void update_enable_state(GKeyFile* kf, g + if( strcmp(list[i], session_name) == 0 ) + { + g_free(list[i]); +- memcpy( list + i, list + i + 1, (n-i) * sizeof(char*) ); ++ memmove( list + i, list + i + 1, (n-i) * sizeof(char*) ); + --n; + break; + } +@@ -259,7 +259,7 @@ void update_enable_state(GKeyFile* kf, g + if( strcmp(list[i], session_name) == 0 ) + { + g_free(list[i]); +- memcpy( list + i, list + i + 1, (n-i) * sizeof(char*) ); ++ memmove( list + i, list + i + 1, (n-i) * sizeof(char*) ); + --n; + break; + } diff --git a/lxde-base/lxsession/files/lxsession-0.5.2-key2-null.patch b/lxde-base/lxsession/files/lxsession-0.5.2-key2-null.patch new file mode 100644 index 000000000000..31c88a9caa66 --- /dev/null +++ b/lxde-base/lxsession/files/lxsession-0.5.2-key2-null.patch @@ -0,0 +1,20 @@ +--- lxsession-0.5.2/lxsession/settings.vala.key2 2014-10-18 01:54:57.000000000 +0900 ++++ lxsession-0.5.2/lxsession/settings.vala 2015-07-13 14:56:00.830117779 +0900 +@@ -56,7 +56,7 @@ namespace Lxsession + return return_map; + } + +- public void create_config_item (string categorie, string key1, string key2, string type, string? variable) ++ public void create_config_item (string categorie, string key1, string? key2, string type, string? variable) + { + /* only support string for now */ + string item_key = categorie + ";" + key1 + ";" + key2 + ";"; +@@ -71,7 +71,7 @@ namespace Lxsession + update_support_keys (categorie, key1, key2); + } + +- public void delete_config_item (string categorie, string key1, string key2, string type) ++ public void delete_config_item (string categorie, string key1, string? key2, string type) + { + /* only support string for now */ + string item_key = categorie + ";" + key1 + ";" + key2 + ";"; diff --git a/lxde-base/lxsession/files/lxsession-0.5.2-notify-daemon-default.patch b/lxde-base/lxsession/files/lxsession-0.5.2-notify-daemon-default.patch new file mode 100644 index 000000000000..ffca8227209a --- /dev/null +++ b/lxde-base/lxsession/files/lxsession-0.5.2-notify-daemon-default.patch @@ -0,0 +1,13 @@ +--- lxsession-0.5.2/lxsession/settings.vala.notify 2015-08-11 14:14:22.187535605 +0900 ++++ lxsession-0.5.2/lxsession/settings.vala 2015-08-11 14:37:18.868694268 +0900 +@@ -258,6 +258,10 @@ + set_generic_default("Session", "proxy_manager", "command", "string", "build-in"); + set_generic_default("Session", "keyring", "command", "string", "ssh-agent"); + ++ set_generic_default("Session", "notification", "command", "string", "/usr/libexec/notification-daemon"); ++ set_generic_default("Session", "notification", "autostart", "string", "true"); ++ ++ + /* Set Xsettings default */ + + set_generic_default("GTK", "iXft", "Antialias", "string", "1"); diff --git a/lxde-base/lxsession/files/lxsession-0.5.2-reload.patch b/lxde-base/lxsession/files/lxsession-0.5.2-reload.patch new file mode 100644 index 000000000000..d7e9164e7286 --- /dev/null +++ b/lxde-base/lxsession/files/lxsession-0.5.2-reload.patch @@ -0,0 +1,43 @@ +--- lxsession-0.5.2/Makefile.am.debug 2014-11-29 23:50:05.000000000 +0900 ++++ lxsession-0.5.2/Makefile.am 2015-06-17 11:08:14.510501437 +0900 +@@ -424,6 +424,7 @@ + --pkg gio-2.0 \ + --pkg posix \ + --pkg lxsettings-daemon \ ++ --pkg xevent \ + $(buildinclip_VALAFLAGS) \ + $(buildinpolkit_VALAFLAGS) \ + $(NULL) +--- lxsession-0.5.2/lxsession/main.vala.debug 2014-10-05 08:49:49.000000000 +0900 ++++ lxsession-0.5.2/lxsession/main.vala 2015-06-17 11:19:54.979024117 +0900 +@@ -96,6 +96,17 @@ + return -1; + } + ++ if (xevent_init() == false) ++ { ++ return 1; ++ } ++ ++ if (reload == true) ++ { ++ send_internal_command(LXS_CMD.RELOAD); ++ return 0; ++ } ++ + message ("Session is %s",session); + message ("DE is %s", desktop_environnement); + +--- lxsession-0.5.2/vapi/xevent.vapi.debug 2015-06-17 11:08:14.520501444 +0900 ++++ lxsession-0.5.2/vapi/xevent.vapi 2015-06-17 11:20:16.384040089 +0900 +@@ -0,0 +1,10 @@ ++[CCode (cprefix = "LxsessionXEvent", cheader_filename = "lxsettings-daemon/xevent.h")] ++ public static void send_internal_command( int cmd ); ++ public static bool xevent_init(); ++ ++[CCode (cname = "int", cprefix = "LXS_", cheader_filename = "lxsettings-daemon/xevent.h", has_type_id = false)] ++ public enum LXS_CMD { ++ RELOAD, ++ EXIT, ++ LAST_CMD ++ } diff --git a/lxde-base/lxsession/lxsession-0.5.2.ebuild b/lxde-base/lxsession/lxsession-0.5.2.ebuild new file mode 100644 index 000000000000..e4ead8ebbe69 --- /dev/null +++ b/lxde-base/lxsession/lxsession-0.5.2.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +inherit vala autotools + +DESCRIPTION="LXDE session manager" +HOMEPAGE="http://lxde.org/" +SRC_URI="mirror://sourceforge/lxde/${P}.tar.xz" + +LICENSE="GPL-2" +KEYWORDS="~alpha ~amd64 ~arm ~ppc ~x86 ~arm-linux ~x86-linux" +SLOT="0" + +# upower USE flag is enabled by default in the desktop profile +IUSE="nls upower" + +COMMON_DEPEND=" + dev-libs/glib:2 + dev-libs/dbus-glib + dev-libs/libgee:0 + dev-libs/libunique:1 + lxde-base/lxde-common + sys-auth/polkit + x11-libs/gtk+:2 + x11-libs/libX11 + sys-apps/dbus +" +RDEPEND="${COMMON_DEPEND} + !lxde-base/lxsession-edit + sys-apps/lsb-release + upower? ( || ( sys-power/upower sys-power/upower-pm-utils ) ) +" +DEPEND="${COMMON_DEPEND} + $(vala_depend) + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig + x11-proto/xproto +" + +PATCHES=( + # Fedora patches + "${FILESDIR}"/${P}-reload.patch + "${FILESDIR}"/${P}-key2-null.patch + "${FILESDIR}"/${P}-notify-daemon-default.patch + "${FILESDIR}"/${P}-fix-invalid-memcpy.patch +) + +src_prepare() { + vala_src_prepare + + # Don't start in Xfce to avoid bugs like + # https://bugzilla.redhat.com/show_bug.cgi?id=616730 + sed -i 's/^NotShowIn=GNOME;KDE;/NotShowIn=GNOME;KDE;XFCE;/g' data/lxpolkit.desktop.in.in || die + + # fix icon in desktop file + # http://lxde.git.sourceforge.net/git/gitweb.cgi?p=lxde/lxsession-edit;a=commit;h=3789a96691eadac9b8f3bf3034a97645860bd138 + sed -i 's/^Icon=xfwm4/Icon=session-properties/g' data/lxsession-edit.desktop.in || die + + default + eautoreconf +} + +src_configure() { + # dbus is used for restart/shutdown (CK, logind?), and suspend/hibernate (UPower) + # gtk3 looks to not be ready, follow what other distributions are + # doing + econf \ + $(use_enable nls) \ + --disable-gtk3 +} |