Control: reassign -1 kdm On Mi, 09 iul 14, 18:06:22, Moritz Muehlenhoff wrote: > Source: kdm > Severity: wishlist > Tags: patch > > Hi KDE maintainers, > the attached patch adds systemd support to KDM. It's working well for > me, but some things are still up for discussion/need work. > > Some notes: > > consolekit: > ----------- > This patch disables consolekit support (this part of the change > can be avoid by removing the hunks which remove the dep on > consolekit and the build-dep on libck-connector-dev. I'm not > sure on the usability of KDE on kfreebsd/hurd. These deps should > likely be kept for kfreebsd-any and hurd. There was a discussion > on debian-devel which stated that the systemd maintainers have > come up with a plan to ensure systemd is pid 1 for updated > and newly installed Linux systems. Unless that comes up it additionally > needs a dependency on systemd-sysv. > > Why did I disable consolekit? First of all, kdm with systemd/pid1 > as currently in the archive has been quite unrealiable for me > with the KDM login failing with error messages like > > service 'org.freedesktop.ConsoleKit': timed out > Jun 27 18:26:59 chartreuse kdm: :0[1362]: Cannot open ConsoleKit > session: Unable to open session: Did not receive a reply. Possible > causes include: the remote application did not send a reply, the > message bus security policy blocked the reply, the reply timeout > expired, or the network connection was broken. > > Or the following error messages from the consolekit service: > > console-kit-daemon.service - Console Manager > Loaded: loaded (/lib/systemd/system/console-kit-daemon.service; > enabled) > Active: failed (Result: timeout) since Di 2014-06-10 18:01:25 CEST; > 2min 44s ago > Main PID: 792 > CGroup: name=systemd:/system/console-kit-daemon.service > > Jun 10 18:00:30 chartreuse console-kit-daemon[792]: (process:995): > GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' > failed > Jun 10 18:00:30 chartreuse console-kit-daemon[792]: missing action > Jun 10 18:00:54 chartreuse console-kit-daemon[792]: WARNING: > polkit_authority_get: Error getting authority: Error initializing > authority: Error calling StartServiceByName for > org.freedesktop.PolicyKit1: > GDBus.Error:org.freedesktop.DBus.Error.TimedOut: Activation of > org.freedesktop.PolicyKit1 timed out > Jun 10 18:00:54 chartreuse console-kit-daemon[792]: > console-kit-daemon[792]: WARNING: polkit_authority_get: Error getting > authority: Error initializing authority: Error calling > StartServiceByName for org.freedesktop.PolicyKit1: > GDBus.Error:org.freedesktop.DBus.Error.TimedOut: Activation of > org.freedesktop.PolicyKit1 timed out > Jun 10 18:01:25 chartreuse systemd[1]: console-kit-daemon.service > operation timed out. Terminating. > Jun 10 18:01:25 chartreuse systemd[1]: Failed to start Console > Manager. > Jun 10 18:01:25 chartreuse systemd[1]: Unit console-kit-daemon.service > entered failed state. > > Without consolekit enabled everything works fine for me. > > I found upstream discussion started by one of the Kubuntu people (who > have also disabled consolekit) which also recommends to disable it: > http://article.gmane.org/gmane.comp.kde.devel.core/82597 > http://article.gmane.org/gmane.comp.kde.devel.core/82598 > http://article.gmane.org/gmane.comp.kde.devel.core/82601 > http://article.gmane.org/gmane.comp.kde.devel.core/82610 > https://bugs.launchpad.net/ubuntu/+source/kde-workspace/+bug/1281036 > > > conffile customisation > ---------------------- > > The sysvinit script has customisation code which generates the > kdmrc at runtime based on /etc/kde4/kdm/kdmrc. I've moved this > code to a separate binary, the init.d script should be adapted > to share the same script. > > activation of the service > ------------------------- > > After installation of the updated package the service isn't enabled > by default. You'll need to run "systemctl enable kdm.service" for > that. I'm not sure how the default display manager is handled if > several are installed, so it's probably for the best right now. > > Cheers, > Moritz > diff -Naur kde-workspace-4.11.9.orig/debian/control kde-workspace-4.11.9/debian/control > --- kde-workspace-4.11.9.orig/debian/control 2014-05-14 19:17:33.000000000 +0200 > +++ kde-workspace-4.11.9/debian/control 2014-07-07 18:57:44.128546659 +0200 > @@ -16,7 +16,6 @@ > kdepimlibs5-dev (>= 4:4.11), > libakonadi-dev (>= 1.1.95), > libboost-dev (>= 1.34), > - libck-connector-dev, > libdbus-1-dev, > libdbusmenu-qt-dev (>= 0.6.0), > libdevstat-dev [kfreebsd-any], > @@ -27,6 +26,7 @@ > libglu1-mesa-dev, > libgps-dev (>= 2.90), > libjpeg-dev, > + dh-systemd, > libkactivities-dev (>= 4:4.11), > libnm-util-dev (>= 0.9) [linux-any], > libpam0g-dev, > @@ -349,7 +349,6 @@ > Section: x11 > Architecture: any > Depends: adduser, > - consolekit, > debconf | debconf-2.0, > kde-wallpapers-default, > kde-workspace-kgreet-plugins (= ${binary:Version}), > diff -Naur kde-workspace-4.11.9.orig/debian/kdm-debian-setup-config kde-workspace-4.11.9/debian/kdm-debian-setup-config > --- kde-workspace-4.11.9.orig/debian/kdm-debian-setup-config 1970-01-01 01:00:00.000000000 +0100 > +++ kde-workspace-4.11.9/debian/kdm-debian-setup-config 2014-07-07 19:12:08.856834615 +0200 > @@ -0,0 +1,53 @@ > +#!/bin/bash > + > +# parameters to support kdm customization > +KDMRC=/etc/kde4/kdm/kdmrc > +BACKGROUNDRC=/etc/kde4/kdm/backgroundrc > + > +# if configuration is changed by kdmtheme or other tools, don't do magick > +if grep -q "^[[:space:]]*Theme=@@@ToBeReplacedByDesktopBase@@@" ${KDMRC}; then > + > + KDMOVERRIDEDIR=/etc/default/kdm.d > + KDMCFGDIR=/var/run/kdm > + KDMCFG=$KDMCFGDIR/kdmrc > + BACKGROUNDCFG=$KDMCFGDIR/backgroundrc > + DEFAULT_KDM_THEME=/usr/share/kde4/apps/kdm/themes/elarun > + > + # we use an alternative kdm master configuration file > + ARG="$ARG -config $KDMCFG" > + > + # we generate kdm configuration files > + genkdmconf --in $KDMCFGDIR 1> /dev/null > + > + # we source overrides. run-parts sorts the list in a predictable order > + if [ -d "$KDMOVERRIDEDIR" ]; then > + for part in $(run-parts --list "$KDMOVERRIDEDIR" 2>/dev/null || true); do > + . "$part" > + done > + fi > + > + # we update kdm configuration files (only overridden values) > + [ -n "$USEBACKGROUND" ] && sed -i "s|^#\?UseBackground=.*|UseBackground=$USEBACKGROUND|" $KDMCFG > + [ -n "$BACKGROUNDCFG" ] && sed -i "s|^#\?BackgroundCfg=.*|BackgroundCfg=$BACKGROUNDCFG|" $KDMCFG > + [ -n "$USETHEME" ] && sed -i "s|^#\?UseTheme=.*|UseTheme=$USETHEME|" $KDMCFG > + [ -n "$THEME" ] && [ -e "$THEME" ] && sed -i "s|^#\?Theme=.*|Theme=$THEME|" $KDMCFG > + [ -n "$LANGUAGE" ] && sed -i "s|^#\?Language=.*|Language=$LANGUAGE|" $KDMCFG > + > + if grep -q "^[[:space:]]*Wallpaper=stripes.png" ${BACKGROUNDRC}; then > + [ -n "$WALLPAPER" ] && [ -e "$WALLPAPER" ] && sed -i "s|^#\?Wallpaper=.*|Wallpaper=`readlink -f $WALLPAPER`|" $BACKGROUNDCFG > + fi > + > + # usetheme is now on "by default" so we need to be sure Theme is not invalid ... > + sed -i "s|@@@ToBeReplacedByDesktopBase@@@|$DEFAULT_KDM_THEME|" ${KDMCFG} > + > + # autologin overrides are useful for live debian environment > + if [ -n "$AUTOLOGINUSER" ]; then > + sed -i "s|^#\?AutoLoginEnable=.*|AutoLoginEnable=true|" $KDMCFG > + sed -i "s|^#\?AutoLoginUser=.*|AutoLoginUser=$AUTOLOGINUSER|" $KDMCFG > + fi > + [ -n "$AUTOLOGINDELAY" ] && sed -i "s|^#\?AutoLoginDelay=.*|AutoLoginDelay=$AUTOLOGINDELAY|" $KDMCFG > + [ -n "$AUTOLOGINAGAIN" ] && sed -i "s|^#\?AutoLoginAgain=.*|AutoLoginAgain=$AUTOLOGINAGAIN|" $KDMCFG > + [ -n "$AUTOLOGINLOCKED" ] && sed -i "s|^#\?AutoLoginLocked=.*|AutoLoginLocked=$AUTOLOGINLOCKED|" $KDMCFG > +fi > + > +exit 0 > diff -Naur kde-workspace-4.11.9.orig/debian/kdm.install kde-workspace-4.11.9/debian/kdm.install > --- kde-workspace-4.11.9.orig/debian/kdm.install 2014-05-14 19:17:33.000000000 +0200 > +++ kde-workspace-4.11.9/debian/kdm.install 2014-07-07 19:13:28.365228876 +0200 > @@ -171,3 +171,4 @@ > usr/share/kde4/config/kdm.knsrc > usr/share/kde4/services/kdm.desktop > usr/share/polkit-1/actions/org.kde.kcontrol.kcmkdm.policy > +debian/kdm-debian-setup-config /usr/sbin > \ Kein Zeilenumbruch am Dateiende. > diff -Naur kde-workspace-4.11.9.orig/debian/kdm.service kde-workspace-4.11.9/debian/kdm.service > --- kde-workspace-4.11.9.orig/debian/kdm.service 1970-01-01 01:00:00.000000000 +0100 > +++ kde-workspace-4.11.9/debian/kdm.service 2014-07-07 18:58:25.216750405 +0200 > @@ -0,0 +1,13 @@ > +[Unit] > +Description=KDM Display Manager > +Conflicts=getty@tty1.service > +After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service > + > +[Service] > +ExecStartPre=/usr/sbin/kdm-debian-setup-config > +ExecStart=/usr/bin/kdm -nodaemon -config /var/run/kdm/kdmrc > +Restart=always > +IgnoreSIGPIPE=no > + > +[Install] > +Alias=display-manager.service > diff -Naur kde-workspace-4.11.9.orig/debian/rules kde-workspace-4.11.9/debian/rules > --- kde-workspace-4.11.9.orig/debian/rules 2014-05-14 19:17:33.000000000 +0200 > +++ kde-workspace-4.11.9/debian/rules 2014-07-07 18:57:44.136546699 +0200 > @@ -1,6 +1,6 @@ > #!/usr/bin/make -f > > -dh = --with=python2 > +dh = --with=python2,systemd > > include /usr/share/pkg-kde-tools/qt-kde-team/2/debian-qt-kde.mk > libpkgs_addsubst_allLibraries = kde-workspace-dev -- http://wiki.debian.org/FAQsFromDebianUser Offtopic discussions among Debian users and developers: http://lists.alioth.debian.org/mailman/listinfo/d-community-offtopic http://nuvreauspam.ro/gpg-transition.txt
Attachment:
signature.asc
Description: Digital signature