[arch-commits] Commit in gdm/repos (3 files)
Ionut Biru
ibiru at archlinux.org
Fri Nov 13 23:51:58 UTC 2009
Date: Friday, November 13, 2009 @ 18:51:57
Author: ibiru
Revision: 58755
Merged revisions 58751 via svnmerge from
svn+ssh://gerolde.archlinux.org/srv/svn-packages/gdm/trunk
........
r58751 | jgc | 2009-11-13 23:32:49 +0200 (Fri, 13 Nov 2009) | 2 lines
upgpkg: gdm 2.28.1-2
Read current keyboard layout using xklavier instead of resetting it to US (FS#16697)
........
Added:
gdm/repos/extra-x86_64/keyboard-use-xklavier.patch
(from rev 58751, gdm/trunk/keyboard-use-xklavier.patch)
Modified:
gdm/repos/extra-x86_64/ (properties)
gdm/repos/extra-x86_64/PKGBUILD
-----------------------------+
PKGBUILD | 9 +++-
keyboard-use-xklavier.patch | 85 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 93 insertions(+), 1 deletion(-)
Property changes on: gdm/repos/extra-x86_64
___________________________________________________________________
Modified: svnmerge-integrated
- /gdm/trunk:1-56167
+ /gdm/trunk:1-58754
Modified: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD 2009-11-13 21:40:57 UTC (rev 58754)
+++ extra-x86_64/PKGBUILD 2009-11-13 23:51:57 UTC (rev 58755)
@@ -2,7 +2,7 @@
# Maintainer: Jan de Groot <jgc at archlinux.org>
pkgname=gdm
pkgver=2.28.1
-pkgrel=1
+pkgrel=2
pkgdesc="Gnome Display Manager (a reimplementation of xdm)"
arch=(i686 x86_64)
license=('GPL')
@@ -17,11 +17,13 @@
install=gdm.install
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.28/${pkgname}-${pkgver}.tar.bz2
04_fix_external_program_directories.patch
+ keyboard-use-xklavier.patch
gdm.pam
gdm-autologin.pam
gdm)
sha256sums=('da77a6fd9d4cc76b68dd4354839f953f8df5fb7921c7777b80256916533a3e7a'
'd41b0945a3db78a06b5aa4101f5515f7ea5d57e70974681c23e5def1df1834bb'
+ '43da7afea3997939f8f804274a75c2b4dc1e5a9a4987e9e3c58be5f3383332dc'
'f1dfa4d88288d4b0a631a68a51b46c2da537bee8fe5a99f9f288c8ff75a50b19'
'3daff680ff6b7ea56f84f40843e46e72477c81e9e405028203c942af04d07ae5'
'272c08d8e8b50bf424d0705ac864d4c18c47ec4f6893b1af732c2efbc86c9550')
@@ -30,6 +32,11 @@
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
patch -Np1 -i "${srcdir}/04_fix_external_program_directories.patch" || return 1
+ patch -Np1 -i "${srcdir}/keyboard-use-xklavier.patch" || return 1
+ libtoolize --force || return 1
+ aclocal || return 1
+ autoconf || return 1
+ automake || return 1
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gdm --localstatedir=/var --disable-static \
--disable-scrollkeeper || return 1
Copied: gdm/repos/extra-x86_64/keyboard-use-xklavier.patch (from rev 58751, gdm/trunk/keyboard-use-xklavier.patch)
===================================================================
--- extra-x86_64/keyboard-use-xklavier.patch (rev 0)
+++ extra-x86_64/keyboard-use-xklavier.patch 2009-11-13 23:51:57 UTC (rev 58755)
@@ -0,0 +1,85 @@
+Ubuntu hal patch translated to libxklavier.
+Always overrides keyboard layout variants: https://bugzilla.gnome.org/show_bug.cgi?id=572765
+--- gdm-2.28.1.orig/daemon/gdm-session-direct.c 2009-10-20 00:12:45.000000000 +0200
++++ gdm-2.28.1/daemon/gdm-session-direct.c 2009-11-07 14:58:54.000000000 +0100
+@@ -42,6 +42,9 @@
+ #include <glib/gstdio.h>
+ #include <glib-object.h>
+
++#include <libxklavier/xklavier.h>
++#include <X11/Xlib.h> /* for Display */
++
+ #include <dbus/dbus-glib.h>
+ #include <dbus/dbus-glib-lowlevel.h>
+
+@@ -598,14 +601,41 @@
+ return setlocale (LC_MESSAGES, NULL);
+ }
+
++static char *
++get_system_default_layout (GdmSessionDirect *session)
++{
++ char *result;
++ Display *display;
++
++ result = NULL;
++ display = XOpenDisplay (session->priv->display_id);
++ if (display) {
++ XklConfigRec *config;
++ XklEngine *engine = xkl_engine_get_instance (display);
++ if (engine)
++ {
++ XklConfigRec *config = xkl_config_rec_new ();
++ if (xkl_config_rec_get_from_server (config, engine) && config->layouts && config->layouts[0]) {
++ result = g_strdup (config->layouts[0]);
++ }
++ g_object_unref (config);
++ }
++ XCloseDisplay (display);
++ }
++
++ if (!result)
++ result = g_strdup ("us");
++ return result;
++}
++
+ static const char *
+ get_default_layout_name (GdmSessionDirect *session)
+ {
+- if (session->priv->saved_layout != NULL) {
+- return session->priv->saved_layout;
++ if (!session->priv->saved_layout) {
++ session->priv->saved_layout = get_system_default_layout (session);
+ }
+
+- return "us";
++ return session->priv->saved_layout;
+ }
+
+ static char *
+--- gdm-2.28.1.orig/daemon/Makefile.am 2009-10-20 00:12:45.000000000 +0200
++++ gdm-2.28.1/daemon/Makefile.am 2009-11-08 11:25:30.000000000 +0100
+@@ -105,6 +105,7 @@
+ $(EXTRA_DAEMON_LIBS) \
+ $(DAEMON_LIBS) \
+ $(PAM_LIBS) \
++ $(LIBXKLAVIER_LIBS) \
+ $(NULL)
+
+ libexec_PROGRAMS = \
+@@ -151,6 +152,7 @@
+ $(XLIB_LIBS) \
+ $(DAEMON_LIBS) \
+ $(EXTRA_DAEMON_LIBS) \
++ $(LIBXKLAVIER_LIBS) \
+ $(NULL)
+
+ gdm_factory_slave_SOURCES = \
+@@ -214,6 +216,7 @@
+ $(XLIB_LIBS) \
+ $(DAEMON_LIBS) \
+ $(EXTRA_DAEMON_LIBS) \
++ $(LIBXKLAVIER_LIBS) \
+ $(NULL)
+
+ gdm_xdmcp_chooser_slave_SOURCES = \
More information about the arch-commits
mailing list