debian/changelog | 133 ++++++- debian/control | 70 --- debian/local/Xsession.d/50x11-common_determine-startup | 3 debian/local/control | 1 debian/local/dexconf | 304 ----------------- debian/local/dexconf.1 | 246 ------------- debian/local/xorg.conf | 96 ----- debian/local/xserver-wrapper.c | 1 debian/rules | 21 - debian/scripts/vars.amd64 | 6 debian/scripts/vars.hurd-i386 | 2 debian/scripts/vars.i386 | 6 debian/scripts/vars.kfreebsd-amd64 | 2 debian/scripts/vars.kfreebsd-i386 | 2 debian/scripts/vars.powerpc | 3 debian/x11-common.postinst.in | 78 +++- debian/x11-common.postrm.in | 15 debian/x11-common.preinst.in | 16 debian/xbase-clients.postinst.in | 20 - debian/xbase-clients.postrm.in | 20 - debian/xbase-clients.preinst.in | 20 - debian/xserver-xorg.examples | 1 debian/xserver-xorg.install | 2 debian/xserver-xorg.manpages | 1 debian/xutils.postinst.in | 35 - debian/xutils.postrm.in | 31 - debian/xutils.preinst.in | 31 - xsf-docs/.gitignore | 3 xsf-docs/COPYING | 19 + xsf-docs/Makefile | 61 +++ xsf-docs/faq/general.mdwn | 58 +++ xsf-docs/howto/build-mesa.mdwn | 201 +++++++++++ xsf-docs/howto/configure-input.mdwn | 176 +++++++++ xsf-docs/howto/report-bugs.mdwn | 38 ++ xsf-docs/howto/triage-bugs.mdwn | 95 +++++ xsf-docs/howto/use-gdb.mdwn | 141 +++++++ xsf-docs/howto/use-xrandr.mdwn | 173 +++++++++ xsf-docs/howtos | 1 xsf-docs/index.mdwn | 34 + xsf-docs/mdwn2html | 63 +++ xsf-docs/reference/dependencies.mdwn | 221 ++++++++++++ xsf-docs/reference/squeeze-backports.mdwn | 65 +++ xsf-docs/reference/upstream-contacts.mdwn | 43 ++ xsf-docs/upstream-features.mdwn | 16 xsf-docs/xsf.css | 94 +++++ xsf-docs/xsf.png |binary xsf-docs/xsf.svg | 234 +++++++++++++ 47 files changed, 1976 insertions(+), 926 deletions(-)
New commits: commit 1ace9ac414f8b58d11cec396e65cea6e1be3ebc1 Author: Timo Aaltonen <[email protected]> Date: Wed Mar 9 16:52:49 2011 +0200 control, rules: Don't build xsf-docs, markdown and wkhtmltopdf are in universe. diff --git a/debian/changelog b/debian/changelog index dd6efa8..314026d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -22,6 +22,8 @@ xorg (1:7.6+4ubuntu1) UNRELEASED; urgency=low (LP: #654353) * x11-common: Clean up old configuration file removals from {preinst,postinst,postrm}.in. + * control, rules: Don't build xsf-docs, markdown and wkhtmltopdf are in + universe. -- Timo Aaltonen <[email protected]> Tue, 08 Mar 2011 15:48:47 +0200 diff --git a/debian/control b/debian/control index 0c00feb..74c6a23 100644 --- a/debian/control +++ b/debian/control @@ -9,10 +9,10 @@ Build-Depends: debhelper (>= 7.3.15ubuntu3), po-debconf, # xsf-docs: - markdown, - wkhtmltopdf, - xauth, - xvfb, +# markdown, +# wkhtmltopdf, +# xauth, +# xvfb, Vcs-Git: git://git.debian.org/git/pkg-xorg/debian/xorg Vcs-Browser: http://git.debian.org/?p=pkg-xorg/debian/xorg.git diff --git a/debian/rules b/debian/rules index b09638b..25c80b4 100755 --- a/debian/rules +++ b/debian/rules @@ -34,7 +34,7 @@ include debian/scripts/vars.$(ARCH) clean: cleanscripts dh_testdir dh_clean debian/local/X debian/po/pothead - $(MAKE) -C xsf-docs clean +# $(MAKE) -C xsf-docs clean -rm -rf stampdir -rm -f debian/po-failsafe/failsafexinit.pot -debconf-updatepo @@ -54,11 +54,11 @@ build-stamp: scripts-stamp xgettext -f debian/po-failsafe/POTFILES.in -d failsafexinit -o debian/po-failsafe/failsafexinit.pot -L Shell ifneq (,$(filter sparc sparc64,$(DEB_HOST_ARCH))) # work around wkhtmltopdf's sigbus on sparc (#613141): - sed -i '/background-image.*svg/d' xsf-docs/xsf.css +# sed -i '/background-image.*svg/d' xsf-docs/xsf.css endif # build XSF docs, under xvfb for wkhtmltodpf: - xvfb-run -- $(MAKE) -C xsf-docs - touch $@ +# xvfb-run -- $(MAKE) -C xsf-docs +# touch $@ build-arch-only: build build-all: @@ -68,7 +68,7 @@ install-stamp: build-stamp dh_testdir dh_testroot dh_prep - $(MAKE) -C xsf-docs install DESTDIR=$(CURDIR)/debian/xserver-xorg/usr/share/doc/xorg +# $(MAKE) -C xsf-docs install DESTDIR=$(CURDIR)/debian/xserver-xorg/usr/share/doc/xorg touch $@ binary-indep: DH_OPTIONS=-i commit b63bc16a0188106967345b1944fb2581aa3ec6d8 Author: Timo Aaltonen <[email protected]> Date: Tue Mar 8 21:36:50 2011 +0200 x11-common: Clean up old configuration file removals from {preinst,postinst,postrm}.in. diff --git a/debian/changelog b/debian/changelog index f54ee58..0d0c402 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,14 +15,13 @@ xorg (1:7.6+4ubuntu1) UNRELEASED; urgency=low of all packages to x11-common's. - debian/scripts/vars.*: Don't drop wacom, synaptics from *-all - debian/xserver-xorg.postinst.in: Also migrate users from psb → vesa. - - debian/x11-common.postinst.in, - debian/x11-common.postrm.in, - debian/x11-common.preinst.in: Remove obsolete conffiles from xinit. * Removed transitional xlibmesa-gl*, libglu1-* packages, they have only 'Suggests' or 'Recommends' rdepends left, and other packages available that replace them. * x11-common: Remove obsolete failsafe configuration files from /etc/gdm. (LP: #654353) + * x11-common: Clean up old configuration file removals from + {preinst,postinst,postrm}.in. -- Timo Aaltonen <[email protected]> Tue, 08 Mar 2011 15:48:47 +0200 diff --git a/debian/x11-common.postinst.in b/debian/x11-common.postinst.in index 87b9ea8..a43bdd3 100644 --- a/debian/x11-common.postinst.in +++ b/debian/x11-common.postinst.in @@ -23,16 +23,6 @@ XWRAPPER_CONFIG_ROSTER="$CONFIG_AUX_DIR/$XWRAPPER_CONFIG_ROSTER_BASE" case "$1" in configure) - if dpkg --compare-versions "$2" lt-nl "1:7.4~2ubuntu1"; then - remove_conffile_commit "/etc/X11/Xsession.d/20xorg-common_process-args" - remove_conffile_commit "/etc/X11/Xsession.d/30xorg-common_xresources" - remove_conffile_commit "/etc/X11/Xsession.d/50xorg-common_determine-startup" - remove_conffile_commit "/etc/X11/Xsession.d/90xorg-common_ssh-agent" - remove_conffile_commit "/etc/X11/Xsession.d/99xorg-common_start" - fi - if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then - remove_conffile_commit "/etc/X11/Xsession.d/60x11-localhost" - fi if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" remove_conffile_commit "/etc/gdm/failsafeDexconf" diff --git a/debian/x11-common.postrm.in b/debian/x11-common.postrm.in index a365f37..a1bdc86 100644 --- a/debian/x11-common.postrm.in +++ b/debian/x11-common.postrm.in @@ -20,16 +20,6 @@ XWRAPPER_CONFIG_ROSTER="$CONFIG_AUX_DIR/${XWRAPPER_CONFIG##*/}.roster" case "$1" in abort-install|abort-upgrade) - if dpkg --compare-versions "$2" lt-nl "1:7.4~2ubuntu1"; then - remove_conffile_rollback "/etc/X11/Xsession.d/20xorg-common_process-args" - remove_conffile_rollback "/etc/X11/Xsession.d/30xorg-common_xresources" - remove_conffile_rollback "/etc/X11/Xsession.d/50xorg-common_determine-startup" - remove_conffile_rollback "/etc/X11/Xsession.d/90xorg-common_ssh-agent" - remove_conffile_rollback "/etc/X11/Xsession.d/99xorg-common_start" - fi - if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then - remove_conffile_rollback "/etc/X11/Xsession.d/60x11-localhost" - fi if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" remove_conffile_commit "/etc/gdm/failsafeDexconf" diff --git a/debian/x11-common.preinst.in b/debian/x11-common.preinst.in index cfce986..0eafb62 100644 --- a/debian/x11-common.preinst.in +++ b/debian/x11-common.preinst.in @@ -16,17 +16,6 @@ CONFIG_DIR=/etc/X11 #INCLUDE_SHELL_LIB# if [ "$1" = "install" ] || [ "$1" = "upgrade" ]; then - - if dpkg --compare-versions "$2" lt-nl "1:7.4~2ubuntu1"; then - remove_conffile_lookup xinit "/etc/X11/Xsession.d/20xorg-common_process-args" - remove_conffile_lookup xinit "/etc/X11/Xsession.d/30xorg-common_xresources" - remove_conffile_lookup xinit "/etc/X11/Xsession.d/50xorg-common_determine-startup" - remove_conffile_lookup xinit "/etc/X11/Xsession.d/90xorg-common_ssh-agent" - remove_conffile_lookup xinit "/etc/X11/Xsession.d/99xorg-common_start" - fi - if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then - remove_conffile_lookup x11-common "/etc/X11/Xsession.d/60x11-localhost" - fi if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" remove_conffile_commit "/etc/gdm/failsafeDexconf" commit 6185ff5ee1faa172b4cbf87e759e6a26d9d647ba Author: Timo Aaltonen <[email protected]> Date: Tue Mar 8 17:19:16 2011 +0200 x11-common: Remove obsolete failsafe configuration files from /etc/gdm. (LP: #654353) diff --git a/debian/changelog b/debian/changelog index 4f2df44..f54ee58 100644 --- a/debian/changelog +++ b/debian/changelog @@ -21,6 +21,8 @@ xorg (1:7.6+4ubuntu1) UNRELEASED; urgency=low * Removed transitional xlibmesa-gl*, libglu1-* packages, they have only 'Suggests' or 'Recommends' rdepends left, and other packages available that replace them. + * x11-common: Remove obsolete failsafe configuration files from /etc/gdm. + (LP: #654353) -- Timo Aaltonen <[email protected]> Tue, 08 Mar 2011 15:48:47 +0200 diff --git a/debian/x11-common.postinst.in b/debian/x11-common.postinst.in index 518db24..87b9ea8 100644 --- a/debian/x11-common.postinst.in +++ b/debian/x11-common.postinst.in @@ -33,6 +33,13 @@ configure) if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then remove_conffile_commit "/etc/X11/Xsession.d/60x11-localhost" fi + if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then + remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" + remove_conffile_commit "/etc/gdm/failsafeDexconf" + remove_conffile_commit "/etc/gdm/failsafeDexconf.old" + remove_conffile_commit "/etc/gdm/failsafeHelpmsg" + remove_conffile_commit "/etc/gdm/failsafeInstall" + fi esac # only mess with config file it exists; otherwise, assume that's the way the diff --git a/debian/x11-common.postrm.in b/debian/x11-common.postrm.in index e5c7fd9..a365f37 100644 --- a/debian/x11-common.postrm.in +++ b/debian/x11-common.postrm.in @@ -30,6 +30,13 @@ abort-install|abort-upgrade) if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then remove_conffile_rollback "/etc/X11/Xsession.d/60x11-localhost" fi + if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then + remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" + remove_conffile_commit "/etc/gdm/failsafeDexconf" + remove_conffile_commit "/etc/gdm/failsafeDexconf.old" + remove_conffile_commit "/etc/gdm/failsafeHelpmsg" + remove_conffile_commit "/etc/gdm/failsafeInstall" + fi esac # clean up non-conffile configuration files and related materials on purge diff --git a/debian/x11-common.preinst.in b/debian/x11-common.preinst.in index d89970b..cfce986 100644 --- a/debian/x11-common.preinst.in +++ b/debian/x11-common.preinst.in @@ -27,6 +27,13 @@ if [ "$1" = "install" ] || [ "$1" = "upgrade" ]; then if dpkg --compare-versions "$2" lt-nl "1:7.4~5ubuntu16"; then remove_conffile_lookup x11-common "/etc/X11/Xsession.d/60x11-localhost" fi + if dpkg --compare-versions "$2" lt-nl "1:7.6+4ubuntu1"; then + remove_conffile_commit "/etc/gdm/failsafe-xorg.conf" + remove_conffile_commit "/etc/gdm/failsafeDexconf" + remove_conffile_commit "/etc/gdm/failsafeDexconf.old" + remove_conffile_commit "/etc/gdm/failsafeHelpmsg" + remove_conffile_commit "/etc/gdm/failsafeInstall" + fi fi #DEBHELPER# commit 8a24aecf838fbea0d75a9eff7e920a1df6b3b024 Author: Timo Aaltonen <[email protected]> Date: Tue Mar 8 16:14:01 2011 +0200 Removed transitional xlibmesa-gl*, libglu1-* packages, they have only 'Suggests' or 'Recommends' rdepends left, and other packages available that replace them. diff --git a/debian/changelog b/debian/changelog index 432e81b..4f2df44 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,12 +4,6 @@ xorg (1:7.6+4ubuntu1) UNRELEASED; urgency=low - Add apport hook - Demote xfonts-{75DPI,100DPI} to Suggests. Demote xfonts-scalable to Recommends. - - Keep old transitional packages; these still have rdepends in Ubuntu - + xlibmesa-gl - + xlibmesa-gl-dev - + xlibmesa-glu - + libglu1-xorg - + libglu1-xorg-dev - debian/local/Failsafe*: Failsafe X hookup. - debian/local/Xsession: Truncate xsession-errors on startup if too big - debian/local/Xsession.d/20x11-common_process-args: Add support for @@ -24,6 +18,9 @@ xorg (1:7.6+4ubuntu1) UNRELEASED; urgency=low - debian/x11-common.postinst.in, debian/x11-common.postrm.in, debian/x11-common.preinst.in: Remove obsolete conffiles from xinit. + * Removed transitional xlibmesa-gl*, libglu1-* packages, they have only + 'Suggests' or 'Recommends' rdepends left, and other packages available + that replace them. -- Timo Aaltonen <[email protected]> Tue, 08 Mar 2011 15:48:47 +0200 diff --git a/debian/control b/debian/control index 2e1d5b5..0c00feb 100644 --- a/debian/control +++ b/debian/control @@ -189,61 +189,6 @@ Description: the X.Org X Window System development libraries Note that this is a convenience package for users and is not a package for Debian developers to have their package depend on. -Package: xlibmesa-gl -Section: libs -Architecture: all -Depends: - libgl1-mesa-glx, - ${misc:Depends}, - x11-common, -Description: transitional package for Debian etch - This package is provided to smooth upgrades from Debian 3.1 ("sarge") to - Debian etch. It may be safely removed from your system. - -Package: xlibmesa-gl-dev -Section: libdevel -Architecture: all -Depends: - libgl1-mesa-dev, - ${misc:Depends}, - x11-common, -Description: transitional package for Debian etch - This package is provided to smooth upgrades from Debian 3.1 ("sarge") to - Debian etch. It may be safely removed from your system. - -Package: xlibmesa-glu -Section: libdevel -Architecture: all -Depends: - libglu1-mesa, - ${misc:Depends}, - x11-common, -Description: transitional package for Debian etch - This package is provided to smooth upgrades from Debian 3.1 ("sarge") to - Debian etch. It may be safely removed from your system. - -Package: libglu1-xorg -Section: libs -Architecture: all -Depends: - libglu1-mesa, - ${misc:Depends}, - x11-common, -Description: transitional package for Debian etch - This package is provided to smooth upgrades from Debian 3.1 ("sarge") to - Debian etch. It may be safely removed from your system. - -Package: libglu1-xorg-dev -Section: libdevel -Architecture: all -Depends: - libglu1-mesa-dev, - ${misc:Depends}, - x11-common, -Description: transitional package for Debian etch - This package is provided to smooth upgrades from Debian 3.1 ("sarge") to - Debian etch. It may be safely removed from your system. - Package: xbase-clients Section: x11 Architecture: all commit f299727f49b84f6e52a8d09f05753331e5c4940e Author: Cyril Brulebois <[email protected]> Date: Fri Feb 25 21:05:47 2011 +0100 Upload to unstable. diff --git a/debian/changelog b/debian/changelog index 7ac8f70..f9e7ac2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -xorg (1:7.6+4) UNRELEASED; urgency=low +xorg (1:7.6+4) unstable; urgency=low [ Steve Langasek ] * Mark x11-common as Multi-Arch: foreign, so foreign-architecture libs @@ -12,7 +12,7 @@ xorg (1:7.6+4) UNRELEASED; urgency=low - Update: howto/triage-bugs - Update: howto/use-gdb (mention getting/using a core file) - -- Steve Langasek <[email protected]> Mon, 21 Feb 2011 19:28:58 -0800 + -- Cyril Brulebois <[email protected]> Fri, 25 Feb 2011 21:05:36 +0100 xorg (1:7.6+3) unstable; urgency=low commit 73984c6b0576f15d8848cdf0cb36765f01914222 Author: Cyril Brulebois <[email protected]> Date: Fri Feb 25 21:03:41 2011 +0100 Document the merge. diff --git a/debian/changelog b/debian/changelog index f2c1433..7ac8f70 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,17 @@ xorg (1:7.6+4) UNRELEASED; urgency=low + [ Steve Langasek ] * Mark x11-common as Multi-Arch: foreign, so foreign-architecture libs have their dependency satisfied by it. + [ Cyril Brulebois ] + * Merge xsf-docs up to the 4d4bfa3eaf commit: + - Add: faq/general + - Add: reference/squeeze-backports + - Update: howto/configure-input + - Update: howto/triage-bugs + - Update: howto/use-gdb (mention getting/using a core file) + -- Steve Langasek <[email protected]> Mon, 21 Feb 2011 19:28:58 -0800 xorg (1:7.6+3) unstable; urgency=low commit 4d4bfa3eaff329d4fb51d970aa2f048ee0ae815d Author: Cyril Brulebois <[email protected]> Date: Fri Feb 25 00:48:50 2011 +0100 use-gdb: Mention getting a core with kdm. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index d90591c..f60eab0 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -56,6 +56,11 @@ that.** [daemon] LocalXserverCommand=/usr/bin/Xorg -br -verbose -audit 0 -novtswitch -core + * Using `kdm`: One should look for the `ServerArgsLocal` variable in + the `/etc/kde4/kdm/kdmrc` file, and add `-core` there. Example: + + ServerArgsLocal=-br -nolisten tcp -core + * Using `xdm`: It’s sufficient to add `-core` to the command configured through `/etc/X11/xdm/Xservers`, for example: commit 8a3e38ac6853fc35327363e26aad55f2f4b9651f Author: Cyril Brulebois <[email protected]> Date: Fri Feb 25 00:44:07 2011 +0100 use-gdb: Need to specify the binary when loading a core. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index 8e1b097..d90591c 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -63,9 +63,10 @@ that.** ### Loading a core file -That’s trivial: +That’s trivial, one just needs to pass both the core file and the path +to the binary: - # gdb -c /etc/X11/core + # gdb -c /etc/X11/core /usr/bin/Xorg Now `gdb` is ready to display backtraces. commit 8802b8730bac49ebeb9e48772a5e1ba65920d56c Author: Cyril Brulebois <[email protected]> Date: Fri Feb 25 00:25:14 2011 +0100 use-gdb: Mention getting a core with xdm. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index daa7cc9..8e1b097 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -56,6 +56,11 @@ that.** [daemon] LocalXserverCommand=/usr/bin/Xorg -br -verbose -audit 0 -novtswitch -core + * Using `xdm`: It’s sufficient to add `-core` to the command + configured through `/etc/X11/xdm/Xservers`, for example: + + :0 local /usr/bin/X :0 vt7 -nolisten tcp -core + ### Loading a core file That’s trivial: commit a0dbd236a467fcd688e85d33a5409eadc6c75e38 Author: Cyril Brulebois <[email protected]> Date: Thu Feb 24 19:17:47 2011 +0100 use-gdb: Mention getting a core with gdm3. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index 89de47e..daa7cc9 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -45,6 +45,17 @@ that.** ## Actual gdb work +### Getting a core file + + * Using `gdm3`: The idea is to tweak the daemon’s + `LocalXserverCommand` setting, adding the `-core` option. As of + `gdm3 2.30`, the defaults can be found in + `/usr/share/gdm/gdm.schemas`. Sample `/etc/gdm3/daemon.conf` + excerpt: + + [daemon] + LocalXserverCommand=/usr/bin/Xorg -br -verbose -audit 0 -novtswitch -core + ### Loading a core file That’s trivial: commit 69be710b26fb230628f64da67d0018d579ed868f Author: Cyril Brulebois <[email protected]> Date: Thu Feb 24 19:00:13 2011 +0100 use-gdb: Mention the needed steps for each approach. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index 4ae55ba..89de47e 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -19,12 +19,23 @@ This is a *post-mortem* approach. The idea is to run X with the `-core` option. Once it dies, a core file (`/etc/X11/core`) is generated, and can be loaded from `gdb`. +Follow these steps: + + 1. Getting a core file. + 2. Loading a core file. + 3. Displaying/saving a backtrace. + ### Two-machine approach You pay the “need a second machine” price, but that buys you interactivity. Just log into the first machine from the second one, using `ssh`. +Follow these steps: + + 1. Attaching/Starting X from gdb. + 2. Displaying/saving a backtrace. + ### Needed packages Obviously, `gdb` is needed; `xserver-xorg-core-dbg` contains the commit 9de1c5e28da7ecba417876671cdfef1ea9bd335f Author: Cyril Brulebois <[email protected]> Date: Thu Feb 24 18:52:57 2011 +0100 use-gdb: Mention loading a core dump. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index a3be461..4ae55ba 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -34,6 +34,14 @@ that.** ## Actual gdb work +### Loading a core file + +That’s trivial: + + # gdb -c /etc/X11/core + +Now `gdb` is ready to display backtraces. + ### Attaching X from gdb The way of starting X doesn’t really matter, as `gdb` makes it commit 2951c0265f337b17d95e2f16f149e1e11f504e52 Author: Cyril Brulebois <[email protected]> Date: Thu Feb 24 18:50:20 2011 +0100 use-gdb: Mention the core file for the single machine approach. diff --git a/xsf-docs/howto/use-gdb.mdwn b/xsf-docs/howto/use-gdb.mdwn index df7152d..a3be461 100644 --- a/xsf-docs/howto/use-gdb.mdwn +++ b/xsf-docs/howto/use-gdb.mdwn @@ -15,17 +15,15 @@ with a single machine. ### One-machine approach -From a console (let’s assume it’s `vt1`), open a `root` -terminal. Then, start a loop which will bring you back to this console -after a given delay (in the following example, every 60 seconds), just -in case. The ampersand (`&`) at the end makes it a background job. - - while :; do sleep 60; chvt 1; done & +This is a *post-mortem* approach. The idea is to run X with the +`-core` option. Once it dies, a core file (`/etc/X11/core`) is +generated, and can be loaded from `gdb`. ### Two-machine approach -That’s simpler, but then you need a second machine. Just log into the -first machine from the second one, using `ssh`. +You pay the “need a second machine” price, but that buys you +interactivity. Just log into the first machine from the second one, +using `ssh`. ### Needed packages commit 25fbfe0adec72cd09ceee2f8055f583602e6eb75 Author: Cyril Brulebois <[email protected]> Date: Thu Feb 24 18:39:55 2011 +0100 faq/general: Mention configure-input, and terminate:ctrl_alt_bksp. diff --git a/xsf-docs/faq/general.mdwn b/xsf-docs/faq/general.mdwn index 80c23f3..515bc78 100644 --- a/xsf-docs/faq/general.mdwn +++ b/xsf-docs/faq/general.mdwn @@ -3,6 +3,14 @@ Cyril Brulebois <[email protected]> +## Input drivers + + * *How do I configure input for X?* + Look at the [how to configure input](../howto/configure-input.html) documentation. + + * *Why can’t I kill X through `Ctrl+Alt+Backspace`?* + That’s explained in the above-mentioned documentation. + ## Video drivers ### Intel driver commit 052474bf1f7a0d74d820e44aa7ab3f2b66bd1c9a Author: Steve Langasek <[email protected]> Date: Mon Feb 21 19:29:56 2011 -0800 Mark x11-common as Multi-Arch: foreign, so foreign-architecture libs have their dependency satisfied by it. diff --git a/debian/changelog b/debian/changelog index ddaafb7..f2c1433 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xorg (1:7.6+4) UNRELEASED; urgency=low + + * Mark x11-common as Multi-Arch: foreign, so foreign-architecture libs + have their dependency satisfied by it. + + -- Steve Langasek <[email protected]> Mon, 21 Feb 2011 19:28:58 -0800 + xorg (1:7.6+3) unstable; urgency=low * Merge xsf-docs up to the 8fc70f1e37 commit: diff --git a/debian/control b/debian/control index 2b32214..c07b6c6 100644 --- a/debian/control +++ b/debian/control @@ -15,6 +15,7 @@ Build-Depends: Package: x11-common Architecture: all +Multi-Arch: foreign Depends: ${misc:Depends}, lsb-base (>= 1.3-9ubuntu2) Description: X Window System (X.Org) infrastructure x11-common contains the filesystem infrastructure required for further commit c9df1b6b4b232d43f35f0456dd731428f9a982ef Author: Cyril Brulebois <[email protected]> Date: Mon Feb 21 16:56:06 2011 +0100 faq/general: Mention how to start a bare X session. diff --git a/xsf-docs/faq/general.mdwn b/xsf-docs/faq/general.mdwn index 8e86196..80c23f3 100644 --- a/xsf-docs/faq/general.mdwn +++ b/xsf-docs/faq/general.mdwn @@ -37,3 +37,14 @@ Cyril Brulebois <[email protected]> (view it online: [for squeeze](http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-nouveau.git;a=blob;f=debian/README.Debian;h=27ced6b1bf5102a5b72525318439efdfb330745d;hb=6c2f12ca18f55b55d49e083d86d87d970ce53a07), [for sid](http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-nouveau.git;a=blob;f=debian/README.Debian)). + + +## Others + +### Session management + + * *How to start a bare X session (without Gnome, KDE, etc.)?* + Assuming there’s no X running on the `:1` display, run this from a + VT: + + startx /usr/bin/xterm -- :1 commit 9833fa5dffd02cb908309a83a44a200dcd3dd9d7 Author: Cyril Brulebois <[email protected]> Date: Mon Feb 21 04:04:06 2011 +0100 index: Link to squeeze-backports. diff --git a/xsf-docs/index.mdwn b/xsf-docs/index.mdwn index 3a516bd..0e30322 100644 --- a/xsf-docs/index.mdwn +++ b/xsf-docs/index.mdwn @@ -22,6 +22,7 @@ metapackage (under `/usr/share/doc/xorg`), starting with `wheezy`. ## Reference documentation * [Dependencies between server and drivers](reference/dependencies.html) + * [Backports policy for squeeze](reference/squeeze-backports.html) * [Upstream contacts](reference/upstream-contacts.html) ## Other documentation commit 902ebb749f699e5bb444fe5e861335c9bcf0586d Author: Cyril Brulebois <[email protected]> Date: Mon Feb 21 04:03:16 2011 +0100 reference/squeeze-backports: New document. diff --git a/xsf-docs/reference/squeeze-backports.mdwn b/xsf-docs/reference/squeeze-backports.mdwn new file mode 100644 index 0000000..89b923f --- /dev/null +++ b/xsf-docs/reference/squeeze-backports.mdwn @@ -0,0 +1,65 @@ +# Backports policy for squeeze + +Cyril Brulebois <[email protected]> + + +## Proposed plans + +If one forgets about libraries and clients, a whole X stack boils down +to: the server itself, input and video drivers, libdrm, and mesa. + +Since upgrading the server means upgrading all input and video drivers +(more than 50 source packages), that’s certainly too much to backport, +since we’re already trying to support `stable` (through stable +updates), `testing`/`unstable`, and `experimental`. For example, in +February 2011, that means `xorg-server` 1.7 in `stable`, 1.9 in +`unstable` (and “soon” in `testing`), and 1.10 in `experimental`. + +So the plan is to keep `xorg-server` as it is in `squeeze` (possibly +preparing/testing targeted fix if appropriate), and backporting +drivers when possible. With API/ABI updates, the minimal server +version required tend to get raised from time to time, but usually +drivers can be built against a rather large range of server +versions. In case a driver stop building against the server available +in `stable`, we’ll likely stick to the highest version still building +against it, and then tell people to upgrade the whole stack if they +need something more recent (unless some trivial cherry-picking is +possible, of course). + +The plan is to backport a few drivers on a possibly regular fashion, +and other drivers upon request. + + +### Input drivers + + * `evdev`: Linux-only keyboard & mouse/pointer driver. + * `keyboard` and `mouse`: Needed for non-Linux ports. + * `synaptics`: Better touchpad support than `evdev`. + + +### Video drivers + + * `ati`, `mach64`, `r128`: Drivers for ATI cards. + * `intel`: Driver for Intel cards. + * `nouveau`: Driver for NVidia cards. + * `fbdev` and `vesa`: Generic drivers. + * `dummy`: Dummy driver, suitable when there’s no monitor connected. + + +### Libraries + +The important libraries are `libdrm` and `mesa`. The former will +likely get pulled at some point by a driver, so a backport will be +needed for this library. The latter is under very heavy development, +so one may want to try a new release or a snapshot without having to +upgrade everything to `unstable`. It’s a huge package to build, so we +[documented how to build it](../howto/build-mesa.html) locally. But +there’s some hope to make some weekly or daily builds available at +some point. + + +### Kernel + +Some of those drivers might need a more recent kernel version than +the one in `squeeze`, but hopefully it’ll be available through +`squeeze-backports` as well. commit a46a56813275a2c336bede0dbbd63ab54c37e6c6 Author: Cyril Brulebois <[email protected]> Date: Mon Feb 21 03:31:22 2011 +0100 report-bugs: Link to use-gdb. diff --git a/xsf-docs/howto/report-bugs.mdwn b/xsf-docs/howto/report-bugs.mdwn index 6fc7140..15b36df 100644 --- a/xsf-docs/howto/report-bugs.mdwn +++ b/xsf-docs/howto/report-bugs.mdwn @@ -21,6 +21,9 @@ Note: In case this metapackage wasn’t used to install your X stack, report a bug against `xserver-xorg` instead. And if that one isn’t installed either, go for `xserver-xorg-core`. +If a backtrace shows up in the X log, it’s much appreciated to try and +get a [full backtrace using gdb](use-gdb.html). + ### Follow-up with more info commit e28961893d9b141475e72d50a9dc3a4ff6eba761 Author: Cyril Brulebois <[email protected]> Date: Fri Feb 18 23:53:24 2011 +0100 triage-bugs: Mention “exclude=tag:squeeze-accepted”. diff --git a/xsf-docs/howto/triage-bugs.mdwn b/xsf-docs/howto/triage-bugs.mdwn index e523584..8ee3f94 100644 --- a/xsf-docs/howto/triage-bugs.mdwn +++ b/xsf-docs/howto/triage-bugs.mdwn @@ -49,9 +49,11 @@ Here’s an example of URL, for the last tags: By the way one should keep an eye on the list of found/fixed versions since those bugs are likely marked as resolved (in `unstable` -or `experimental`), but might still affect a stable release. Maybe we -just need to have both `squeeze-candidate` and `squeeze-accepted`, and -swap usertags when the stable upload happens. +or `experimental`), but might still affect a stable release. + +To list the bugs marked `squeeze-candidate` but not +`squeeze-accepted`: +→ <http://bugs.debian.org/cgi-bin/[email protected]&tag=squeeze-candidate&exclude=tag:squeeze-accepted> ## Categories commit a6a400729c813eb8c2ce4b62b5bd022d889fd984 Author: Cyril Brulebois <[email protected]> Date: Tue Feb 15 22:09:35 2011 +0100 howtos: Rename to howto for consistency. We have faq/ and reference/ as singular. Keep a symlink for now since some mails to the BTS reference howtos/*. diff --git a/xsf-docs/howto/build-mesa.mdwn b/xsf-docs/howto/build-mesa.mdwn new file mode 100644 index 0000000..dc49cd9 --- /dev/null +++ b/xsf-docs/howto/build-mesa.mdwn @@ -0,0 +1,201 @@ +# How to build mesa + +Cyril Brulebois <[email protected]> + + +## Foreword + +Mesa is a special package since many flavours are built, which means +it takes quite some time to get all packages ready, as well as some +disc space (over 2GB for the `build/` directory alone). + +Also, trying to figure out whether latest `master` is also affected, +or backporting some bug fixes might lead to some painful I/O while +generating the `.deb` files, and then installing/unpacking them. This +is why this document was written: Helping users test other mesa +releases, branches, bug fixes without having to build full packages, +and without having to mess with their systems (*i.e.* no root access +is needed once the build dependencies are installed). + +We’ll focus on the DRI (Direct Rendering Infrastructure) flavour +(`libgl1-mesa-dri`), which is the most common. + +It might be possible to adapt the following steps to another flavour, +in which case the appropriate options to be passed to `./configure` +should be looked up in the `debian/rules` file of the Debian source +package. + +*Note:* Before reading further, be aware that `nouveau` is a bit + special. + + * It’s considered experimental, and shipped in the + `libgl1-mesa-dri-experimental` package accordingly. + * It may fail to build (both API and ABI are still changing). + * We’re not shipping `nouveau_vieux_dri.so` yet (for cards from NV04 + to NV2X; `nouveau_dri.so` is for NV30 and later). See the upstream + [FeatureMatrix](http://nouveau.freedesktop.org/wiki/FeatureMatrix) + page to determine a card’s series. + + +## Gathering information + +Get started by installing `mesa-utils`, which contains `glxinfo`. + + * *Is direct rendering enabled?* + + $ glxinfo | grep ^direct + direct rendering: Yes + + ↪ Yes. + + * *Is this the classic or + [Gallium](http://en.wikipedia.org/wiki/Gallium3D) driver?* + + $ glxinfo | grep 'renderer string' + OpenGL renderer string: Mesa DRI Intel(R) 945GM GEM 20100330 DEVELOPMENT + + ↪ No “Gallium” here, therefore: “classic”. + + * *Which driver is this, and where is it located?* + + $ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$ + libGL: OpenDriver: trying /usr/lib/dri/tls/i915_dri.so + libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so + + ↪ `i915`, from the system directory: `/usr/lib/dri` (likely + installed through a Debian package). + + * *How can I get more debugging information?* + + export LIBGL_DEBUG=verbose + export MESA_DEBUG=1 + export EGL_LOG_LEVEL=debug + + +## Preparing mesa sources + +To get started, installing all build dependencies of the `mesa` source +package should be sufficient, along with the essential build tools, +and `git`: + + $ sudo apt-get install build-essential git + $ sudo apt-get build-dep mesa + +If you’re on `squeeze` you may need to install a few more packages: +newer `libdrm-dev` (**FIXME:** talk about picking it from `wheezy`? or +about a local installation?), as well as `libxmu-dev`, `libxi-dev`. + +Make sure you have some disc space available, since the git repository +is over 120MB, and since the mesa directory is over 500MB after a +build. Once you’re ready, grab the upstream mesa sources: + + $ git clone git://anongit.freedesktop.org/mesa/mesa mesa.git + $ cd mesa.git + $ autoreconf -vfi + +Here’s what the `./configure` call will look like: + + $ ./configure --enable-driglx-direct \ + --enable-gallium \ + --enable-gles-overlay \ + --enable-gles1 \ + --enable-gles2 \ + --enable-glx-tls \ + --with-driver=dri \ + --with-dri-driverdir=/usr/lib/dri \ + --with-egl-platforms='drm x11' \ + --with-state-trackers=egl,glx,dri,vega \ + … + +Now, what are the parameters to replace “`…`” with? Basically, if +you determined an Intel driver (`i915` or `i965`), you want to use the +classic drivers and to disable the Gallium drivers. If you saw a +Radeon driver (`r300` or `r600`), you should prefer the Gallium -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

