[arch-commits] Commit in kbd/repos (4 files)

Antonio Rojas arojas at archlinux.org
Mon Oct 7 19:12:21 UTC 2019


    Date: Monday, October 7, 2019 @ 19:12:21
  Author: arojas
Revision: 364048

archrelease: copy trunk to testing-x86_64

Added:
  kbd/repos/testing-x86_64/
  kbd/repos/testing-x86_64/PKGBUILD
    (from rev 364047, kbd/trunk/PKGBUILD)
  kbd/repos/testing-x86_64/fix-euro2.patch
    (from rev 364047, kbd/trunk/fix-euro2.patch)
  kbd/repos/testing-x86_64/kbd-fix-loadkmap-compat.patch
    (from rev 364047, kbd/trunk/kbd-fix-loadkmap-compat.patch)

-------------------------------+
 PKGBUILD                      |   65 ++++++++++++++++++++++++++++++++++++++++
 fix-euro2.patch               |    9 +++++
 kbd-fix-loadkmap-compat.patch |   22 +++++++++++++
 3 files changed, 96 insertions(+)

Copied: kbd/repos/testing-x86_64/PKGBUILD (from rev 364047, kbd/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2019-10-07 19:12:21 UTC (rev 364048)
@@ -0,0 +1,65 @@
+# Maintainer: Tobias Powalowski <tpowa at archlinux.org>
+
+pkgname=kbd
+pkgver=2.2.0
+pkgrel=4
+pkgdesc="Keytable files and keyboard utilities"
+arch=('x86_64')
+url="http://www.kbd-project.org"
+license=('GPL')
+depends=('glibc' 'pam')
+makedepends=('check' 'git')
+#source=(https://www.kernel.org/pub/linux/utils/${pkgname}/${pkgname}-${pkgver}.tar.gz
+#        https://www.kernel.org/pub/linux/utils/kbd/${pkgname}-${pkgver}.tar.sign
+source=(git+https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git#tag=v$pkgver
+        'fix-euro2.patch'
+        'kbd-fix-loadkmap-compat.patch')
+provides=('vlock')
+conflicts=('vlock')
+replaces=('vlock')
+md5sums=('SKIP'
+         'd869200acbc0aab6a9cafa43cb140d4e'
+         '98f634bf1771834cdb94bc44aa2636ee')
+validpgpkeys=(
+              '7F2A3D07298149A0793C9A4EA45ABA544CFFD434' #Alexey Gladkov 
+             )
+
+prepare() {
+  cd ${srcdir}/${pkgname}
+  # rename keymap files with the same names
+  # this is needed because when only name of keymap is specified
+  # loadkeys loads the first keymap it can find, which is bad (see FS#13837)
+  # this should be removed when upstream adopts the change
+  mv data/keymaps/i386/qwertz/cz{,-qwertz}.map
+  mv data/keymaps/i386/olpc/es{,-olpc}.map
+  mv data/keymaps/i386/olpc/pt{,-olpc}.map
+  mv data/keymaps/i386/fgGIod/trf{,-fgGIod}.map
+  mv data/keymaps/i386/colemak/{en-latin9,colemak}.map
+  # fix euro2 #28213
+  patch -Np1 -i ../fix-euro2.patch
+  git cherry-pick -n 15a74479 # Don't override CFLAGS
+  git cherry-pick -n acf93e44 # https://github.com/legionus/kbd/issues/31
+  git cherry-pick -n 7e27102b # https://github.com/legionus/kbd/issues/32
+  patch -p1 -i ../kbd-fix-loadkmap-compat.patch # Restore compatibility with busybox loadkmap
+  autoreconf -if
+}
+
+build() {
+  cd ${pkgname}
+  ./configure --prefix=/usr --datadir=/usr/share/kbd --mandir=/usr/share/man
+  make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes
+}
+
+check() {
+  cd ${pkgname}
+
+# This test is expected to fail since kbd-fix-loadkmap-compat.patch modifies the binary format
+  sed -e 's|dumpkeys-bkeymap ||' -i tests/Makefile
+
+  make check
+}
+
+package() {
+  cd ${pkgname}
+  make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes DESTDIR="${pkgdir}" install
+}

Copied: kbd/repos/testing-x86_64/fix-euro2.patch (from rev 364047, kbd/trunk/fix-euro2.patch)
===================================================================
--- testing-x86_64/fix-euro2.patch	                        (rev 0)
+++ testing-x86_64/fix-euro2.patch	2019-10-07 19:12:21 UTC (rev 364048)
@@ -0,0 +1,9 @@
+--- kbd-1.15.5/data/keymaps/i386/include/euro2.map.old	2013-05-08 15:00:25.917752313 +0200
++++ kbd-1.15.5/data/keymaps/i386/include/euro2.map	2013-05-08 15:00:54.943957367 +0200
+@@ -2,5 +2,5 @@
+ # [Say: "loadkeys euro2" to get Euro and cent with AltGr (right alt)
+ #  on the positions where many keyboards have E and C.
+ #  To get it displayed, use a latin0 (i.e., latin9) font.]
+-altgr keycode  18 = currency
++altgr keycode  18 = euro
+ altgr keycode  46 = cent

Copied: kbd/repos/testing-x86_64/kbd-fix-loadkmap-compat.patch (from rev 364047, kbd/trunk/kbd-fix-loadkmap-compat.patch)
===================================================================
--- testing-x86_64/kbd-fix-loadkmap-compat.patch	                        (rev 0)
+++ testing-x86_64/kbd-fix-loadkmap-compat.patch	2019-10-07 19:12:21 UTC (rev 364048)
@@ -0,0 +1,22 @@
+diff --git a/src/libkeymap/dump.c b/src/libkeymap/dump.c
+index 83ac351..8531b5a 100644
+--- a/src/libkeymap/dump.c
++++ b/src/libkeymap/dump.c
+@@ -72,9 +72,14 @@ int lk_dump_bkeymap(struct lk_ctx *ctx, FILE *fd)
+ 			continue;
+ 
+ 		for (j = 0; j < NR_KEYS / 2; j++) {
+-			int v = lk_get_key(ctx, i, j);
++			int value = lk_get_key(ctx, i, j);
+ 
+-			if (fwrite(&v, sizeof(v), 1, fd) != 1)
++			if (value < 0 || value > USHRT_MAX) {
++				ERR(ctx, _("can not bind key %d to value %d because it is too large"), j, value);
++				goto fail;
++			}
++
++			if (fwrite(&value, sizeof(unsigned short), 1, fd) != 1)
+ 				goto fail;
+ 		}
+ 	}
+



More information about the arch-commits mailing list