czwartek, 23 sierpnia 2012

Multiseat - final thoughts (so far)

Now I am happily running an up-to-date Debian Wheezy. However, some precautions must be made when upgrading. I wrote such a script:


#!/bin/bash

SENSITIVE="wmctrl xserver-xephyr lightdm policykit"

PACKAGES=`apt-get --dry-run dist-upgrade | awk '/^The following packages will be upgraded:/,/^[1-9]./' | tail -n +2 | head -n -1`

echo "Searching sensitive packages:"
echo
echo $SENSITIVE
echo
echo "in:"
echo
echo $PACKAGES
echo

FOUND=0

for i in $SENSITIVE; do
    echo $PACKAGES | grep $i 2>&1 >/dev/null && echo Found: $i && FOUND=1
done

if [ $FOUND -eq 0 ]; then
echo No sensitive packages found in upgrade.
fi

The script can be run after apt-get update to see if any of the packages enumerated in "SENSITIVE" are to be upgraded this time. If yes, care must be taken.

Policy kit needs a paragraph of its own. At this moment Debian Wheezy comes with policykit-1 version 0.105. This is the last version in which the actions' permissions are customized using .pkla files. From 0.106 on (0.107 is the latest now) the format and naming of the directories and files has changed.

Another thing is systemd, which one day can become The Right Way of doing things.

8 komentarzy:

  1. your work is inspiring.
    just an fyi: systemd will not work when using the nvidia binary. I came to that realization after a nice chat with lennart poettring. Also, the display manager has to support systemd. Not sure which ones do, but the systemd docs refer to gdm.

    OdpowiedzUsuń
    Odpowiedzi
    1. Yeah... I've noticed that a multiseat configuration is never managed once and for all - it is still a niche approach. And I don't like it because Linux beautifully handles multiple users at the same time. So why not multiple local users at the same machine?

      Usuń
  2. I would very much like to see this method implemented without Xephyr. A similar approach to manage hotpluging devices when using multiple video cards and multiple X sessions.
    Maybe it's time i dust off my bash hat and start working.

    OdpowiedzUsuń
    Odpowiedzi
    1. Don't you know, the crisis in Europe has been proclaimed some 2 years ago... So nowadays you don't buy extra hardware if you can do it in software :D

      Usuń
    2. Well, for my purposes, i need to have hw acceleration. So i must use separate gpus. I had multiseat setup through X and KDM, but without the udev magic it was kinda disappointing. I started playing around with systemd on a debian wheezy build and soon found out that my efforts were futile. Back to the tried and true method... With some new found insight from your blog here. hehe. Thanks!

      Usuń
  3. So I finally made the updates i wanted to make here
    https://help.ubuntu.com/community/MultiseatX

    Can I implore you to manage this page?
    https://help.ubuntu.com/community/MultiseatOneCard

    OdpowiedzUsuń
  4. What exactly would you expect me to do? I've visited the page in question and seen it is quite elaborate already.

    Plus I am a Debian user, which of course is not very far from Ubuntu, but still. I hate plymouth! I guess I could write something from the Debian perspective (I tend to keep up with the current testing), but probably am not so eager to follow Ubuntu releases.

    OdpowiedzUsuń
  5. Well, I'm not familiar with the proper procedure to implement the Xephyr solution, so I am hoping you can review it for quality assurance. The page does seem elaborate, yes, but I am not sure of its accuracy. Maybe share your scripting methods with the community :)

    On a side note... Do you have audio and peripherals (webcams and usb storage for example) working per seat?

    OdpowiedzUsuń