e: add support for systemd user session.
This commit is contained in:
parent
3f34680b7a
commit
cd28bc8145
|
@ -1,3 +1,7 @@
|
|||
2013-03-28 Cedric Bail
|
||||
|
||||
* added support for systemd user session.
|
||||
|
||||
2013-03-11 Mike Blumenkrantz
|
||||
|
||||
* menus are now drawn directly on the compositor canvas
|
||||
|
|
1
NEWS
1
NEWS
|
@ -45,6 +45,7 @@ Additions:
|
|||
* new option for disabling all pointer warps
|
||||
* added option for preventing all keyboard layout changes
|
||||
* added option for remembering filemanager windows globally
|
||||
* Added support for systemd user session
|
||||
|
||||
Changes:
|
||||
Modules:
|
||||
|
|
|
@ -205,6 +205,12 @@ if test "x${have_bluetooth}" = "xyes"; then
|
|||
AC_DEFINE_UNQUOTED([HAVE_BLUETOOTH], [1], [Bluetooth is there])
|
||||
fi
|
||||
|
||||
# Detect systemd user session directory properly
|
||||
EFL_PKG_CHECK_VAR([USER_SESSION_DIR], [systemd], [systemduserunitdir],
|
||||
[have_systemd_user_session="yes"], [have_systemd_user_session="no"])
|
||||
AM_CONDITIONAL([HAVE_SYSTEMD_USER_SESSION], [test "x${have_systemd_user_session}" = "xyes"])
|
||||
AC_SUBST([USER_SESSION_DIR])
|
||||
|
||||
execinfo_libs=""
|
||||
AC_CHECK_HEADERS([execinfo.h], [have_execinfo="yes"], [have_execinfo="no"])
|
||||
if test "x${have_execinfo}" = "xyes" ; then
|
||||
|
@ -1009,6 +1015,7 @@ data/etc/Makefile
|
|||
data/etc/sysactions.conf
|
||||
data/icons/Makefile
|
||||
data/backgrounds/Makefile
|
||||
data/units/Makefile
|
||||
doc/Makefile
|
||||
doc/Doxyfile
|
||||
doc/e.dox
|
||||
|
|
|
@ -10,4 +10,6 @@ icons \
|
|||
backgrounds \
|
||||
flags \
|
||||
favorites \
|
||||
desktop
|
||||
desktop \
|
||||
units
|
||||
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
AUTOMAKE_OPTIONS = 1.4 foreign
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
if HAVE_SYSTEMD_USER_SESSION
|
||||
unitsdir = $(USER_SESSION_DIR)
|
||||
units_DATA = e18.service
|
||||
endif
|
||||
|
||||
EXTRA_DIST = $(units_DATA)
|
|
@ -0,0 +1,27 @@
|
|||
[Unit]
|
||||
Description=Enlightenment 17 service
|
||||
Before=end.target
|
||||
After=xorg.target
|
||||
Requires=xorg.target
|
||||
Requires=dbus.socket
|
||||
Requires=pulseaudio.service
|
||||
Requires=ssh-agent.service
|
||||
AllowIsolate=true
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
#Environment=PATH=uncomment:to:override:your:PATH
|
||||
Environment=E_START=enlightenment
|
||||
ExecStart=/usr/bin/enlightenment
|
||||
Restart=always
|
||||
RestartPreventExitStatus=0
|
||||
RestartSec=2
|
||||
StartLimitInterval=30
|
||||
StartLimitBurst=7
|
||||
KillMode=process
|
||||
WatchdogSec=1
|
||||
TimeoutSec=1
|
||||
NotifyAccess=all
|
||||
|
||||
[Install]
|
||||
WantedBy=wm.target
|
|
@ -0,0 +1,14 @@
|
|||
# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
|
||||
# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
# -------------------------------------------
|
||||
# Retrieves the value of the pkg-config variable for the given module.
|
||||
AC_DEFUN([EFL_PKG_CHECK_VAR],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
|
||||
|
||||
_PKG_CONFIG([$1], [variable="][$3]["], [$2])
|
||||
AS_VAR_COPY([$1], [pkg_cv_][$1])
|
||||
|
||||
AS_VAR_IF([$1], [""], [$5], [$4])dnl
|
||||
])# PKG_CHECK_VAR
|
||||
|
|
@ -187,32 +187,35 @@ main(int argc, char **argv)
|
|||
/* trap deadly bug signals and allow some form of sane recovery */
|
||||
/* or ability to gdb attach and debug at this point - better than your */
|
||||
/* wm/desktop vanishing and not knowing what happened */
|
||||
TS("Signal Trap");
|
||||
action.sa_sigaction = e_sigseg_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGSEGV, &action, NULL);
|
||||
if (!getenv("NOTIFY_SOCKET"))
|
||||
{
|
||||
TS("Signal Trap");
|
||||
action.sa_sigaction = e_sigseg_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGSEGV, &action, NULL);
|
||||
|
||||
action.sa_sigaction = e_sigill_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGILL, &action, NULL);
|
||||
action.sa_sigaction = e_sigill_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGILL, &action, NULL);
|
||||
|
||||
action.sa_sigaction = e_sigfpe_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGFPE, &action, NULL);
|
||||
action.sa_sigaction = e_sigfpe_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGFPE, &action, NULL);
|
||||
|
||||
action.sa_sigaction = e_sigbus_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGBUS, &action, NULL);
|
||||
action.sa_sigaction = e_sigbus_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGBUS, &action, NULL);
|
||||
|
||||
action.sa_sigaction = e_sigabrt_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGABRT, &action, NULL);
|
||||
TS("Signal Trap Done");
|
||||
action.sa_sigaction = e_sigabrt_act;
|
||||
action.sa_flags = SA_NODEFER | SA_RESETHAND | SA_SIGINFO;
|
||||
sigemptyset(&action.sa_mask);
|
||||
sigaction(SIGABRT, &action, NULL);
|
||||
TS("Signal Trap Done");
|
||||
}
|
||||
|
||||
t = ecore_time_unix_get();
|
||||
s = getenv("E_START_TIME");
|
||||
|
|
Loading…
Reference in New Issue