[xorg] Xinerama avec xorg-server 1.6

Xorg, Compiz, KDE / Gnome / Xfce / Fluxbox / e17 / fvwm ... GDM/KDM/XDM...
Répondre
Avatar de l’utilisateur
warnaud
Maître du Kyudo
Messages : 1640
Inscription : ven. 11 août 2006, 17:05
Localisation : Rolle (CH)

[xorg] Xinerama avec xorg-server 1.6

Message par warnaud »

En mettant à jour xorg en version 1.6, j'ai eu de magnifiques problèmes avec xinerama:
- il y avait un curseur par écran (un seul de mobile mais le dernier emplacemen sur les deux autres était affiché ...)
- crash violent en appuyant sur Backspace / maintenant certaines touches ...

Solution:
Dans un répertoire de votre choix:

Code : Tout sélectionner

yaourt -G xorg-server
pour récupérer PKGBUILD et autres patchs/.install
puis on télécharge les patchs suivants:

Code : Tout sélectionner

wget http://cvs.fedoraproject.org/viewvc/rpms/xorg-x11-server/devel/xserver-1.6.0-xinerama-crashes.patch?revision=1.1
wget http://cvs.fedoraproject.org/viewvc/rpms/xorg-x11-server/devel/xserver-1.6.0-xinerama-cursors.patch?revision=1.1
Ensuite il faut utiliser ce PKGBUILD pour reconstruire le pkg xorg-server:

Code : Tout sélectionner

# $Id$
# Maintainer: Alexander Baldeck <kth5@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>

pkgname=xorg-server
pkgver=1.6.0
pkgrel=4
pkgdesc="X.Org X servers"
arch=('i686' 'x86_64')
license=('custom')
url="http://xorg.freedesktop.org"
depends=('hal>=0.5.11' 'libgl' 'libxfont>=1.4.0' 'openssl>=0.9.8j' 'libpciaccess>=0.10.5' 'libxv>=1.0.4' 'pixman>=0.14.0' 'xcursor-themes' 'xkeyboard-config>=1.5' 'xorg-server-utils' 'xorg-fonts-misc' 'xbitmaps' 'diffutils' 'xf86-input-evdev>=2.1.3')
makedepends=('libx11>=1.2' 'mesa>=7.4' 'xf86driproto>=2.0.4' 'xtrans>=1.2.3' 'libxkbfile>=1.0.5' 'randrproto>=1.3.0' 'renderproto>=0.9.3' 'xcmiscproto>=1.1.2' 'bigreqsproto>=1.0.2' 'resourceproto>=1.0.2' 'videoproto>=2.2.2' 'compositeproto>=0.4' 'scrnsaverproto>=1.1.0' 'resourceproto>=1.0.2' 'libxinerama>=1.0.3' 'xf86dgaproto>=2.0.3' 'recordproto>=1.13.2' 'libgl>=7.4' 'glproto>=1.4.9')
conflicts=('catalyst-utils<=9.2')
options=('!libtool')
provides=('x-server')
groups=('xorg')
install=xorg-server.install
source=(${url}/releases/individual/xserver/${pkgname}-${pkgver}.tar.bz2
	xorg-redhat-die-ugly-pattern-die-die-die.patch
	server-1.6.patch
	hal-wait.patch
	xserver-1.6.0-xinerama-crashes.patch
	xserver-1.6.0-xinerama-cursors.patch)
md5sums=('aafe73f5807ce8bb534727ecb72467c7'
         '1a336eb22e27cbf443ec5a2ecddfa93c'
         '064559385557ad02432a1e800b92b14e'
         'f16d2caef84e1a9c4075b6c5e145512d'
	 'fdb4fb466459c32c897ee3b405b6f849'
	 'a30429f7c2114e7170d62858472ec102')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  # Get rid of the ugly pattern
  patch -Np3 -i "${srcdir}/xorg-redhat-die-ugly-pattern-die-die-die.patch" || return 1

  # Upstream fixes from server-1.6 branch
  patch -Np1 -i "${srcdir}/server-1.6.patch" || return 1

  # Revert waiting for hal, assume hal won't show up when initial connect fails
  patch -R -Np1 -i "${srcdir}/hal-wait.patch" || return 1

  # Avoid Crashes when Xinerama is enabled
  patch -Np1 -i "${srcdir}/xserver-1.6.0-xinerama-crashes.patch"  || return 1

  # Avoid Cursors problem with xinerama
  patch -Np1 -i "${srcdir}/xserver-1.6.0-xinerama-cursors.patch"  || return 1

  # Fix dbus config path
  sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.*  || return 1

  libtoolize --force || return 1
  aclocal || return 1
  autoconf || return 1
  automake --add-missing || return 1

  ./configure --prefix=/usr \
              --enable-ipv6 \
              --enable-dri \
              --disable-dmx \
              --enable-xvfb \
              --enable-xnest \
              --enable-composite \
              --enable-xcsecurity \
              --enable-xorg \
	      --enable-xephyr \
              --enable-glx-tls \
	      --enable-kdrive \
              --enable-install-setuid \
              --enable-config-hal \
	      --enable-config-dbus \
	      --enable-record \
	      --disable-xfbdev \
	      --disable-xfake \
	      --disable-xsdl \
              --disable-static \
              --sysconfdir=/etc/X11 \
              --localstatedir=/var \
              --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/100dpi:unscaled,/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
              --with-xkb-path=/usr/share/X11/xkb \
              --with-xkb-output=/var/lib/xkb \
              --with-dri-driver-path=/usr/lib/xorg/modules/dri || return 1

  make || return 1
  make DESTDIR="${pkgdir}" install || return 1

  rm -rf "${pkgdir}/var/log" || return 1

  install -m755 -d "${pkgdir}/etc/X11" || return 1
  install -m755 -d "${pkgdir}/var/lib/xkb" || return 1

  # Needed for non-mesa drivers, libgl will restore it
  mv "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" \
     "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.xorg" || return 1

  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
}
Pour ceux qui sont en 32 bits le pkg est là déjà tout compilé: http://arnaud.fortier.free.fr/archlinux ... pkg.tar.gz
yaourt -U xorg-server-1.6.0-4-i686.pkg.tar.gz
Et hop !
En attendant qu'on m'explique comment utiliser xrandr avec 2 cartes et 3 écrans ... :D
Plus ça rate, plus ça a de chance de réussir. En somme, un succès n'est qu'une erreur qui a finit par réussir (même par erreur). Ne déséspérez donc pas et perseverez. Utilisez La Rache™
Patientia quod lard quod barrus planto diligo ut licentia
—¤÷(`[¤*Powered By *¤]´)÷¤—
Archlinux ~ Fvwm ~ Irssi ~ URxvt
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Re: [xorg] Xinerama avec xorg-server 1.6

Message par mélodie »

Coucou,

Sur le chan, Skunnik nous avait dit que pour pouvoir utiliser ctrl+alt+backspace pour quitter X, il faut ajouter ceci dans xorg.conf:

Code : Tout sélectionner

Section "ServerFlags"
   Option "DontZap" "False"
EndSection
Pour le reste, perso je n'ai qu'un écran/une carte. :|
jiu
archer de cavalerie
Messages : 160
Inscription : dim. 25 mai 2008, 16:24
Localisation : Auckland, Nouvelle Zelande

Re: [xorg] Xinerama avec xorg-server 1.6

Message par jiu »

pour pouvoir utiliser ctrl+alt+backspace pour quitter X, il faut ajouter ceci dans xorg.conf:[...]
Au fait, comment on est censé faire normalement pour sortir de X depuis ce changement?
JashuGatts
Daikyu
Messages : 61
Inscription : lun. 01 sept. 2008, 19:34

Re: [xorg] Xinerama avec xorg-server 1.6

Message par JashuGatts »

la réponse m'intéresse aussi parce que j'ai pas trouvé et c'est lourd des fois :?
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [xorg] Xinerama avec xorg-server 1.6

Message par tuxce »

jiu a écrit : Au fait, comment on est censé faire normalement pour sortir de X depuis ce changement?
en arretant normalement le programme que lance startx, xinit etc... comme d'habitude quoi :)
ctrl+alt+bs kill le X, elle sort pas normalement.
JashuGatts
Daikyu
Messages : 61
Inscription : lun. 01 sept. 2008, 19:34

Re: [xorg] Xinerama avec xorg-server 1.6

Message par JashuGatts »

pas faux
Avatar de l’utilisateur
warnaud
Maître du Kyudo
Messages : 1640
Inscription : ven. 11 août 2006, 17:05
Localisation : Rolle (CH)

Re: [xorg] Xinerama avec xorg-server 1.6

Message par warnaud »

Super une nouvelle version d'xorg-server \o/
Toujours les mêmes bugs avec xinerama... elle est pas belle la vie? :cdmalad:
le nouveau PKGBUILD avec les mêmes patchs:

Code : Tout sélectionner

# $Id$
# Maintainer: Alexander Baldeck <kth5@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>

pkgname=xorg-server
pkgver=1.6.1
pkgrel=2
pkgdesc="X.Org X servers"
arch=('i686' 'x86_64')
license=('custom')
url="http://xorg.freedesktop.org"
depends=('hal>=0.5.11' 'libgl' 'libxfont>=1.4.0' 'openssl>=0.9.8j' 'libpciaccess>=0.10.5' 'libxv>=1.0.4' 'pixman>=0.14.0' 'xcursor-themes' 'xkeyboard-config>=1.5' 'xorg-server-utils' 'xorg-fonts-misc' 'xbitmaps' 'diffutils' 'xf86-input-evdev>=2.1.3')
makedepends=('libx11>=1.2' 'mesa>=7.4' 'xf86driproto>=2.0.4' 'xtrans>=1.2.3' 'libxkbfile>=1.0.5' 'randrproto>=1.3.0' 'renderproto>=0.9.3' 'xcmiscproto>=1.1.2' 'bigreqsproto>=1.0.2' 'resourceproto>=1.0.2' 'videoproto>=2.2.2' 'compositeproto>=0.4' 'scrnsaverproto>=1.1.0' 'libxinerama>=1.0.3' 'xf86dgaproto>=2.0.3' 'recordproto>=1.13.2' 'libgl>=7.4' 'glproto>=1.4.9')
conflicts=('catalyst-utils<=9.2')
options=('!libtool')
provides=('x-server')
groups=('xorg')
install=xorg-server.install
source=(${url}/releases/individual/xserver/${pkgname}-${pkgver}.tar.bz2
	xorg-redhat-die-ugly-pattern-die-die-die.patch
	hal-wait.patch
	xserver-1.6.0-xinerama-crashes.patch
        xserver-1.6.0-xinerama-cursors.patch)
md5sums=('ed0878bf32a24d4948c3b8a122a39eff'
         '1a336eb22e27cbf443ec5a2ecddfa93c'
         'f16d2caef84e1a9c4075b6c5e145512d'
         'fdb4fb466459c32c897ee3b405b6f849'
	 'a30429f7c2114e7170d62858472ec102')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  # Get rid of the ugly pattern
  patch -Np3 -i "${srcdir}/xorg-redhat-die-ugly-pattern-die-die-die.patch" || return 1

  # Revert waiting for hal, assume hal won't show up when initial connect fails
  patch -R -Np1 -i "${srcdir}/hal-wait.patch" || return 1

  # Avoid Crashes when Xinerama is enabled
  patch -Np1 -i "${srcdir}/xserver-1.6.0-xinerama-crashes.patch"  || return 1

  # Avoid Cursors problem with xinerama
  patch -Np1 -i "${srcdir}/xserver-1.6.0-xinerama-cursors.patch"  || return 1

  # Fix dbus config path
  sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.*  || return 1

  libtoolize --force || return 1
  aclocal || return 1
  autoconf || return 1
  automake --add-missing || return 1

  ./configure --prefix=/usr \
              --enable-ipv6 \
              --enable-dri \
              --disable-dmx \
              --enable-xvfb \
              --enable-xnest \
              --enable-composite \
              --enable-xcsecurity \
              --enable-xorg \
	      --enable-xephyr \
              --enable-glx-tls \
	      --enable-kdrive \
              --enable-install-setuid \
              --enable-config-hal \
	      --enable-config-dbus \
	      --enable-record \
	      --disable-xfbdev \
	      --disable-xfake \
	      --disable-xsdl \
              --disable-static \
              --sysconfdir=/etc/X11 \
              --localstatedir=/var \
              --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/100dpi:unscaled,/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
              --with-xkb-path=/usr/share/X11/xkb \
              --with-xkb-output=/var/lib/xkb \
              --with-dri-driver-path=/usr/lib/xorg/modules/dri || return 1

  make || return 1
  make DESTDIR="${pkgdir}" install || return 1

  rm -rf "${pkgdir}/var/log" || return 1

  install -m755 -d "${pkgdir}/etc/X11" || return 1
  install -m755 -d "${pkgdir}/var/lib/xkb" || return 1

  # Needed for non-mesa drivers, libgl will restore it
  mv "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" \
     "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.xorg" || return 1

  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
}
:666: :666: :666: :666:
=> le pkg 32 bits : http://arnaud.fortier.free.fr/archlinux ... pkg.tar.gz (désolé j'avais pas changé la variable pkgrel ... pas le gout de recompiler :) )
Plus ça rate, plus ça a de chance de réussir. En somme, un succès n'est qu'une erreur qui a finit par réussir (même par erreur). Ne déséspérez donc pas et perseverez. Utilisez La Rache™
Patientia quod lard quod barrus planto diligo ut licentia
—¤÷(`[¤*Powered By *¤]´)÷¤—
Archlinux ~ Fvwm ~ Irssi ~ URxvt
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Re: [xorg] Xinerama avec xorg-server 1.6

Message par mélodie »

Trop de mises à jour me tuent. :cdmalad:
Mc_Lenet
newbie
Messages : 7
Inscription : sam. 05 avr. 2008, 19:30

Re: [xorg] Xinerama avec xorg-server 1.6

Message par Mc_Lenet »

Bonjour,

Merci pour cette solution warnaud, problème réglé chez moi!
Avatar de l’utilisateur
warnaud
Maître du Kyudo
Messages : 1640
Inscription : ven. 11 août 2006, 17:05
Localisation : Rolle (CH)

Re: [xorg] Xinerama avec xorg-server 1.6

Message par warnaud »

N'empêche c'est super lourding!
Au boulot j'ai regardé xrandr mais franchement ça déconne @bloc et c'est pasdu tout KISS.
Alors bon, je suis pas contre l'innovation mais quand le produit n+1 ne fait pas ce que le produit d'avant fait de base ça saoule.
Plus ça rate, plus ça a de chance de réussir. En somme, un succès n'est qu'une erreur qui a finit par réussir (même par erreur). Ne déséspérez donc pas et perseverez. Utilisez La Rache™
Patientia quod lard quod barrus planto diligo ut licentia
—¤÷(`[¤*Powered By *¤]´)÷¤—
Archlinux ~ Fvwm ~ Irssi ~ URxvt
Répondre