# HG changeset patch # User David Demelier # Date 1554549866 -7200 # Node ID 31b4a03cced11f3f2770fcaa64d548173785b23a # Parent bf45d0fd81273c72ac60720b7b95186f31845864 mate/mate-session-manager: initial import, closes #1464 diff -r bf45d0fd8127 -r 31b4a03cced1 mate/mate-session-manager/mate-session-manager-post.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mate/mate-session-manager/mate-session-manager-post.sh Sat Apr 06 13:24:26 2019 +0200 @@ -0,0 +1,20 @@ +#!/bin/sh +# +# Copyright (c) 2019 David Demelier +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +if [ "$1" = "install" ]; then + chroot $DESTDIR /usr/bin/gtk-update-icon-cache -fqt /usr/share/icons/hicolor +fi diff -r bf45d0fd8127 -r 31b4a03cced1 mate/mate-session-manager/mate-session-manager.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mate/mate-session-manager/mate-session-manager.sh Sat Apr 06 13:24:26 2019 +0200 @@ -0,0 +1,75 @@ +#!/bin/sh +# +# Copyright (c) 2019 David Demelier +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +PKGNAME=mate-session-manager +PKGVERSION=1.22.0 +PKGREVISION=1 +PKGLICENSE="GPLv2" +PKGSUMMARY="MATE session manager" +PKGDOWNLOAD="https://pub.mate-desktop.org/releases/1.22/$PKGNAME-$PKGVERSION.tar.xz" +PKGDEPENDS="graphics/gtk + lib/dbus-glib + lib/glib + perl/perl:build + x11/libice + x11/libsm + x11/libx11 + x11/libxau + x11/libxext + x11/libxrender + x11/libxtst + x11/xtrans" +PKGOPTIONS="IPV6" + +: ${CHOST:=$(uname -m)-linux-musl} +: ${CBUILD:=$(uname -m)-linux-musl} +: ${CC:=gcc} +: ${CFLAGS:=-O2} +: ${LDFLAGS:=} +: ${LIBS:=} +: ${IPV6:=yes} + +if [ "$IPV6" = "yes" ]; then + with_ipv6="--enable-ipv6" +else + with_ipv6="--disable-ipv6" +fi + +build() +{ + rm -rf $PKGNAME-$PKGVERSION + tar xvaf $PKGNAME-$PKGVERSION.tar.xz + pushd $PKGNAME-$PKGVERSION + + # https://git.alpinelinux.org/aports/plain/community/mate-session-manager/systemd-dependency.patch + patch -p1 < ../systemd-dependency.patch + CC="$CC" \ + CFLAGS="$CFLAGS" \ + LDFLAGS="$LDFLAGS" \ + LIBS="$LIBS" \ + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --without-systemd \ + $with_ipv6 + make + make install DESTDIR=$DESTDIR + + popd + rm -rf $PKGNAME-$PKGVERSION +} diff -r bf45d0fd8127 -r 31b4a03cced1 mate/mate-session-manager/systemd-dependency.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mate/mate-session-manager/systemd-dependency.patch Sat Apr 06 13:24:26 2019 +0200 @@ -0,0 +1,67 @@ +From https://github.com/mate-desktop/mate-session-manager/commit/254a091b31517a25bc037b31daff27fbb74ac90d + +From 254a091b31517a25bc037b31daff27fbb74ac90d Mon Sep 17 00:00:00 2001 +From: Victor Kareh +Date: Wed, 6 Mar 2019 09:20:36 -0500 +Subject: [PATCH] Guard against missing systemd + +--- + mate-session/gsm-systemd.c | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/mate-session/gsm-systemd.c b/mate-session/gsm-systemd.c +index da3f23b..d03cafd 100644 +--- a/mate-session/gsm-systemd.c ++++ b/mate-session/gsm-systemd.c +@@ -429,16 +429,31 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + gboolean is_last_session; + int ret, i; + ++#ifdef HAVE_SYSTEMD + ret = sd_pid_get_session (getpid (), &session); ++#endif ++ ++ if (session == NULL) { ++ return FALSE; ++ } + + if (ret != 0) { ++ free (session); + return FALSE; + } + ++#ifdef HAVE_SYSTEMD + ret = sd_uid_get_sessions (getuid (), FALSE, &sessions); ++#endif ++ ++ if (sessions == NULL) { ++ free (session); ++ return FALSE; ++ } + + if (ret <= 0) { + free (session); ++ free (sessions); + return FALSE; + } + +@@ -450,7 +465,9 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + if (g_strcmp0 (sessions[i], session) == 0) + continue; + ++#ifdef HAVE_SYSTEMD + ret = sd_session_get_state (sessions[i], &state); ++#endif + + if (ret != 0) + continue; +@@ -461,7 +478,9 @@ gsm_systemd_is_last_session_for_user (GsmSystemd *manager) + } + free (state); + ++#ifdef HAVE_SYSTEMD + ret = sd_session_get_type (sessions[i], &type); ++#endif + + if (ret != 0) + continue;