[arch-commits] Commit in kbd/repos (4 files)
Tobias Powalowski
tpowa at archlinux.org
Tue Jul 21 12:06:17 UTC 2020
Date: Tuesday, July 21, 2020 @ 12:06:17
Author: tpowa
Revision: 392323
archrelease: copy trunk to testing-x86_64
Added:
kbd/repos/testing-x86_64/
kbd/repos/testing-x86_64/PKGBUILD
(from rev 392322, kbd/trunk/PKGBUILD)
kbd/repos/testing-x86_64/fix-euro2.patch
(from rev 392322, kbd/trunk/fix-euro2.patch)
kbd/repos/testing-x86_64/kbd-fix-loadkmap-compat.patch
(from rev 392322, kbd/trunk/kbd-fix-loadkmap-compat.patch)
-------------------------------+
PKGBUILD | 59 ++++++++++++++++++++++++++++++++++++++++
fix-euro2.patch | 9 ++++++
kbd-fix-loadkmap-compat.patch | 22 ++++++++++++++
3 files changed, 90 insertions(+)
Copied: kbd/repos/testing-x86_64/PKGBUILD (from rev 392322, kbd/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD (rev 0)
+++ testing-x86_64/PKGBUILD 2020-07-21 12:06:17 UTC (rev 392323)
@@ -0,0 +1,59 @@
+# Maintainer: Tobias Powalowski <tpowa at archlinux.org>
+
+pkgname=kbd
+pkgver=2.3.0
+pkgrel=1
+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')
+provides=('vlock')
+conflicts=('vlock')
+replaces=('vlock')
+sha256sums=('SKIP'
+ 'a5e0167b6a82a9eb4d581d56baab930c2d80f5541dc34630460b73e1115384b8')
+validpgpkeys=(
+ '7F2A3D07298149A0793C9A4EA45ABA544CFFD434' #Alexey Gladkov
+ )
+
+prepare() {
+ cd ${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
+ 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 392322, kbd/trunk/fix-euro2.patch)
===================================================================
--- testing-x86_64/fix-euro2.patch (rev 0)
+++ testing-x86_64/fix-euro2.patch 2020-07-21 12:06:17 UTC (rev 392323)
@@ -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 392322, 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 2020-07-21 12:06:17 UTC (rev 392323)
@@ -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