On 22:42, brunomaxi...@openmailbox.org wrote:
I'm also using xorg 1.15 from sid, with Robert's patch to use devd
instead of HAL.
The patch already is in package or not yet?
Not yet; I rebuilt xorg-server/1.15 with the attached patch, installed
the new xserver-common and xserver-xorg-core, and fetched remaining
dependencies from sid (apt-get -f install).
(I made some edits to Robert's patch so that it can apply to this new
version; it may not be fully correct but seems to be working so far).
Regards,
--
Steven Chamberlain
ste...@pyro.eu.org
diff -Nur -x .pc xorg-server-1.14.5.old/debian/control xorg-server-1.14.5/debian/control
--- xorg-server-1.14.5.old/debian/control 2014-02-08 01:52:23.0 +0100
+++ xorg-server-1.14.5/debian/control 2014-02-08 01:53:10.249920492 +0100
@@ -49,8 +49,6 @@
libpciaccess-dev (= 0.12.901),
libgcrypt-dev,
nettle-dev,
- libdbus-1-dev [kfreebsd-any],
- libhal-dev [kfreebsd-any],
libudev-dev (= 151-3) [linux-any],
libselinux1-dev (= 2.0.80) [linux-any],
libaudit-dev [linux-any],
@@ -90,6 +88,7 @@
xserver-common (= ${source:Version}),
keyboard-configuration [linux-any kfreebsd-any],
udev (= 149) [linux-any],
+ devd [kfreebsd-any],
${shlibs:Depends},
${misc:Depends},
Recommends: libgl1-mesa-dri (= 7.10.2-4)
@@ -150,6 +149,7 @@
x11-xkb-utils-udeb,
# disabled: keyboard-configuration [linux-any kfreebsd-any],
udev-udeb (= 149) [linux-any],
+ devd-udeb [kfreebsd-any],
${shlibs:Depends},
${misc:Depends},
Provides:
diff -Nur -x .pc xorg-server-1.14.5.old/debian/patches/devd.diff xorg-server-1.14.5/debian/patches/devd.diff
--- xorg-server-1.14.5.old/debian/patches/devd.diff 1970-01-01 01:00:00.0 +0100
+++ xorg-server-1.14.5/debian/patches/devd.diff 2014-02-08 01:58:26.401912887 +0100
@@ -0,0 +1,649 @@
+--- /dev/null
b/config/devd.c
+@@ -0,0 +1,524 @@
++/*
++ * Copyright © 2012 Baptiste Daroussin
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining a
++ * copy of this software and associated documentation files (the Software),
++ * to deal in the Software without restriction, including without limitation
++ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ * and/or sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice (including the next
++ * paragraph) shall be included in all copies or substantial portions of the
++ * Software.
++ *
++ * THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++ * DEALINGS IN THE SOFTWARE.
++ *
++ * Author: Baptiste Daroussin b...@freebsd.org
++ */
++
++#ifdef HAVE_DIX_CONFIG_H
++#include dix-config.h
++#endif
++
++#include sys/types.h
++#include sys/socket.h
++#include sys/sysctl.h
++#include sys/un.h
++
++#include ctype.h
++#include stdlib.h
++#include stdio.h
++#include stdarg.h
++#include stdbool.h
++#include unistd.h
++
++#include input.h
++#include inputstr.h
++#include hotplug.h
++#include config-backends.h
++#include os.h
++
++#define DEVD_SOCK_PATH /var/run/devd.pipe
++
++#define DEVD_EVENT_ADD '+'
++#define DEVD_EVENT_REMOVE '-'
++
++static int sock_devd = -1;
++
++#if XORG_VERSION_CURRENT 1080
++enum {
++ ATTR_KEYBOARD,
++ ATTR_POINTER,
++ ATTR_JOYSTICK,
++ ATTR_TOUCHPAD,
++ ATTR_TOUCHSCREEN,
++};
++#endif
++
++struct hw_type {
++ const char *driver;
++ int flag;
++ const char *xdriver;
++};
++
++static struct hw_type hw_types[] = {
++// { ukbd, ATTR_KEYBOARD, kdb },
++// { atkbd, ATTR_KEYBOARD, kdb },
++ { ums, ATTR_POINTER, mouse },
++ { psm, ATTR_POINTER, mouse },
++// { uhid, ATTR_POINTER, mouse },
++ { joy, ATTR_JOYSTICK, NULL },
++ { atp, ATTR_TOUCHPAD, NULL },
++ { uep, ATTR_TOUCHSCREEN, NULL },
++ { NULL, -1, NULL },
++};
++
++#if XORG_VERSION_CURRENT 1080
++static void
++add_option(InputOption **options, const char *key, const char *value)
++{
++if (!value || *value == '\0')
++return;
++
++for (; *options; options = (*options)-next)
++;
++*options = calloc(sizeof(**options), 1);
++if (!*options) /* Yeesh. */
++return;
++(*options)-key = xstrdup(key);
++(*options)-value = xstrdup(value);
++(*options)-next = NULL;
++}
++
++static void
++remove_device(DeviceIntPtr dev)
++{
++/* this only gets called for devices that have already been added */
++LogMessage(X_INFO, config/devd: removing device %s\n, dev-name);
++
++/* Call PIE here so we don't try to dereference a device that's
++ * already been removed. */