回退 'Pull Request !1 : kbd:update to 2.2.0'
This commit is contained in:
parent
421c6b0713
commit
102383ef46
42
Check-existance-of-map-before-dumping-it.patch
Normal file
42
Check-existance-of-map-before-dumping-it.patch
Normal file
@ -0,0 +1,42 @@
|
||||
From 7e665ed238d01917e40430680b1181c668772756 Mon Sep 17 00:00:00 2001
|
||||
From: Oleg Bulatov <obulatov@redhat.com>
|
||||
Date: Wed, 25 Apr 2018 18:19:42 +0200
|
||||
Subject: [PATCH] Check existance of map before dumping it
|
||||
|
||||
---
|
||||
src/libkeymap/dump.c | 12 ++++++++----
|
||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/libkeymap/dump.c b/src/libkeymap/dump.c
|
||||
index c4e2513..8bc5d70 100644
|
||||
--- a/src/libkeymap/dump.c
|
||||
+++ b/src/libkeymap/dump.c
|
||||
@@ -520,8 +520,10 @@ no_shorthands:
|
||||
defs[j] = K(KT_META, KVAL(defs[j - 8]));
|
||||
|
||||
for (j = 0; j < keymapnr; j++) {
|
||||
- if ((j >= 16 && buf[j] != K_HOLE) || (j < 16 && buf[j] != defs[j]))
|
||||
- goto unexpected;
|
||||
+ if (lk_map_exists(ctx, j)) {
|
||||
+ if ((j >= 16 && buf[j] != K_HOLE) || (j < 16 && buf[j] != defs[j]))
|
||||
+ goto unexpected;
|
||||
+ }
|
||||
}
|
||||
|
||||
isasexpected = 1;
|
||||
@@ -577,8 +579,10 @@ no_shorthands:
|
||||
fprintf(fd, "\n");
|
||||
|
||||
for (j = 1; j < keymapnr; j++) {
|
||||
- if (buf[j] != buf[0] && !zapped[j]) {
|
||||
- print_bind(ctx, fd, buf[j], i, j, numeric);
|
||||
+ if (lk_map_exists(ctx, j)) {
|
||||
+ if (buf[j] != buf[0] && !zapped[j]) {
|
||||
+ print_bind(ctx, fd, buf[j], i, j, numeric);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
} else {
|
||||
--
|
||||
2.21.0.windows.1
|
||||
|
||||
28
Fix-infinite-loop-of-vlock-if-locked-VC-is-closed.patch
Normal file
28
Fix-infinite-loop-of-vlock-if-locked-VC-is-closed.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From afb661b80441b6e3fa8cfa3b69f50e4805ebf8be Mon Sep 17 00:00:00 2001
|
||||
From: Vitezslav Crhonek <vcrhonek@redhat.com>
|
||||
Date: Mon, 14 May 2018 11:21:45 +0200
|
||||
Subject: [PATCH] Fix infinite loop of vlock if locked VC is closed
|
||||
|
||||
---
|
||||
src/vlock/auth.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/vlock/auth.c b/src/vlock/auth.c
|
||||
index 25efb5e..4cbc685 100644
|
||||
--- a/src/vlock/auth.c
|
||||
+++ b/src/vlock/auth.c
|
||||
@@ -140,9 +140,9 @@ int get_password(pam_handle_t *pamh, const char *username, const char *tty)
|
||||
fflush(stdout);
|
||||
/*
|
||||
* EOF encountered on read?
|
||||
- * If not on VT, check stdin.
|
||||
+ * Check stdin.
|
||||
*/
|
||||
- if (is_vt || isatty(STDIN_FILENO)) {
|
||||
+ if (isatty(STDIN_FILENO)) {
|
||||
/* Ignore error. */
|
||||
sleep(SHORT_DELAY);
|
||||
break;
|
||||
--
|
||||
2.21.0.windows.1
|
||||
|
||||
43
Fix-memory-leak.patch
Normal file
43
Fix-memory-leak.patch
Normal file
@ -0,0 +1,43 @@
|
||||
From ca317cb7bd17792ff9f16a3c0eb49e11e963c63f Mon Sep 17 00:00:00 2001
|
||||
From: luochunsheng <luochunsheng@huawei.com>
|
||||
Date: Sat, 13 Apr 2019 16:24:11 +0800
|
||||
Subject: [PATCH] Subject: [PATCH] Fix memory leak
|
||||
|
||||
---
|
||||
src/libkeymap/parser.y | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/libkeymap/parser.y b/src/libkeymap/parser.y
|
||||
index d9efbf8..50c4f14 100644
|
||||
--- a/src/libkeymap/parser.y
|
||||
+++ b/src/libkeymap/parser.y
|
||||
@@ -11,6 +11,7 @@
|
||||
*/
|
||||
%{
|
||||
#define YY_HEADER_EXPORT_START_CONDITIONS 1
|
||||
+#define YY_YY_Y_TAB_H_INCLUDED 1
|
||||
|
||||
#include "config.h"
|
||||
#include "nls.h"
|
||||
@@ -411,7 +412,6 @@ lk_parse_keymap(struct lk_ctx *ctx, lkfile_t *f)
|
||||
|
||||
ctx->mod = 0;
|
||||
|
||||
- yylex_init(&scanner);
|
||||
yylex_init_extra(ctx, &scanner);
|
||||
|
||||
INFO(ctx, _("Loading %s"), f->pathname);
|
||||
@@ -424,8 +424,9 @@ lk_parse_keymap(struct lk_ctx *ctx, lkfile_t *f)
|
||||
|
||||
rc = 0;
|
||||
|
||||
+fail:
|
||||
stack_pop(ctx, scanner);
|
||||
|
||||
- fail: yylex_destroy(scanner);
|
||||
+ yylex_destroy(scanner);
|
||||
return rc;
|
||||
}
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
28
configure.ac-Fix-logic-of-vlock-configure-switch.patch
Normal file
28
configure.ac-Fix-logic-of-vlock-configure-switch.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From f7f357ef079b6d185f340e716d7c72a98d82bad0 Mon Sep 17 00:00:00 2001
|
||||
From: Garry Filakhtov <filakhtov@gmail.com>
|
||||
Date: Fri, 20 Jul 2018 15:58:56 +0200
|
||||
Subject: [PATCH] configure.ac: Fix logic of vlock configure switch
|
||||
|
||||
Downstream bug report: https://bugs.gentoo.org/661650
|
||||
|
||||
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 87eb63c..07098cf 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -119,7 +119,7 @@ AM_CONDITIONAL(BUILD_LIBKEYMAP, test "$BUILD_LIBKEYMAP" = "yes")
|
||||
|
||||
AC_ARG_ENABLE(vlock,
|
||||
AS_HELP_STRING(--disable-vlock, [do not build vlock]),
|
||||
- [VLOCK_PROG=no],[VLOCK_PROG=yes])
|
||||
+ [VLOCK_PROG=$enableval],[VLOCK_PROG=yes])
|
||||
AM_CONDITIONAL(VLOCK, test "$VLOCK_PROG" = "yes")
|
||||
|
||||
if test "$VLOCK_PROG" = "yes"; then
|
||||
--
|
||||
2.21.0.windows.1
|
||||
|
||||
52
kbd-1.15-keycodes-man.patch
Normal file
52
kbd-1.15-keycodes-man.patch
Normal file
@ -0,0 +1,52 @@
|
||||
diff -up kbd-2.0.4/docs/man/man1/showkey.1.orig kbd-2.0.4/docs/man/man1/showkey.1
|
||||
--- kbd-2.0.4/docs/man/man1/showkey.1.orig 2016-10-31 16:56:02.000000000 +0100
|
||||
+++ kbd-2.0.4/docs/man/man1/showkey.1 2017-01-11 10:45:03.763312393 +0100
|
||||
@@ -84,6 +84,19 @@ corresponds to what the keyboard hardwar
|
||||
to know the scan codes sent by various keys it is better to boot a
|
||||
2.4 kernel. Since 2.6.9 there also is the boot option atkbd.softraw=0
|
||||
that tells the 2.6 kernel to return the actual scan codes.
|
||||
+
|
||||
+.SH NOTES
|
||||
+The raw scan codes are available only on AT and PS/2 keyboards,
|
||||
+and even then they are disabled unless the
|
||||
+.B atkbd.softraw=0
|
||||
+kernel parameter is used.
|
||||
+When the raw scan codes are not available, the kernel uses a fixed built-in
|
||||
+table to produce scan codes from keycodes. Thus,
|
||||
+.BR setkeycodes (8)
|
||||
+can affect the output of
|
||||
+.B showkey
|
||||
+in scan code dump mode.
|
||||
+
|
||||
.SH "SEE ALSO"
|
||||
.BR loadkeys (1),
|
||||
.BR dumpkeys (1),
|
||||
diff -up kbd-2.0.4/docs/man/man8/setkeycodes.8.orig kbd-2.0.4/docs/man/man8/setkeycodes.8
|
||||
--- kbd-2.0.4/docs/man/man8/setkeycodes.8.orig 2016-10-31 16:56:02.000000000 +0100
|
||||
+++ kbd-2.0.4/docs/man/man8/setkeycodes.8 2017-01-11 10:45:03.763312393 +0100
|
||||
@@ -38,6 +38,10 @@ to showkey(1), the command
|
||||
.RE
|
||||
will assign the keycode 112 to it, and then loadkeys(1) can be used
|
||||
to define the function of this key.
|
||||
+
|
||||
+USB keyboards have standardized keycodes and
|
||||
+.B setkeycodes
|
||||
+doesn't affect them at all.
|
||||
.LP
|
||||
Some older kernels might hardwire a low scancode range to the
|
||||
equivalent keycodes; setkeycodes will fail when you try to remap
|
||||
@@ -56,6 +60,14 @@ None.
|
||||
.SH BUGS
|
||||
The keycodes of X have nothing to do with those of Linux.
|
||||
Unusual keys can be made visible under Linux, but not under X.
|
||||
+
|
||||
+.B setkeycodes
|
||||
+affects only the "first" input device
|
||||
+that has modifiable scancode-to-keycode mapping.
|
||||
+If there is more than one such device,
|
||||
+.B setkeycodes
|
||||
+cannot change the mapping of other devices than the "first" one.
|
||||
+
|
||||
.SH "SEE ALSO"
|
||||
.I "dumpkeys (1), loadkeys (1), showkey (1), getkeycodes (8)"
|
||||
|
||||
65
kbd-1.15-sparc.patch
Normal file
65
kbd-1.15-sparc.patch
Normal file
@ -0,0 +1,65 @@
|
||||
diff -up kbd-2.0.4/docs/man/man8/kbdrate.8.orig kbd-2.0.4/docs/man/man8/kbdrate.8
|
||||
--- kbd-2.0.4/docs/man/man8/kbdrate.8.orig 2017-01-11 11:04:50.114831348 +0100
|
||||
+++ kbd-2.0.4/docs/man/man8/kbdrate.8 2017-01-11 11:05:35.619851252 +0100
|
||||
@@ -22,7 +22,7 @@ Using
|
||||
without any options will reset the repeat rate to 10.9 characters per second (cps)
|
||||
and the delay to 250 milliseconds (ms) for Intel- and M68K-based systems.
|
||||
These are the IBM defaults. On SPARC-based systems it will reset the repeat rate
|
||||
-to 5 cps and the delay to 200 ms.
|
||||
+to 20 cps and the delay to 200 ms.
|
||||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
diff -up kbd-2.0.4/src/kbdrate.c.orig kbd-2.0.4/src/kbdrate.c
|
||||
--- kbd-2.0.4/src/kbdrate.c.orig 2017-01-11 11:05:10.226840148 +0100
|
||||
+++ kbd-2.0.4/src/kbdrate.c 2017-01-11 11:05:56.832860537 +0100
|
||||
@@ -111,9 +111,12 @@ static int valid_delays[] = { 250, 500,
|
||||
static int
|
||||
KDKBDREP_ioctl_ok(double rate, int delay, int silent)
|
||||
{
|
||||
+#if defined(KDKBDREP) && !defined(__sparc__)
|
||||
/*
|
||||
* This ioctl is defined in <linux/kd.h> but is not
|
||||
* implemented anywhere - must be in some m68k patches.
|
||||
+ * We cannot blindly try unimplemented ioctls on sparc64 -
|
||||
+ * the 32<->64bit transition layer does not like it.
|
||||
* Since 2.4.9 also on i386.
|
||||
*/
|
||||
struct my_kbd_repeat kbdrep_s;
|
||||
@@ -176,6 +179,9 @@ KDKBDREP_ioctl_ok(double rate, int delay
|
||||
rate, kbdrep_s.delay);
|
||||
|
||||
return 1; /* success! */
|
||||
+#else /* no KDKBDREP or __sparc__ */
|
||||
+ return 0;
|
||||
+#endif /* KDKBDREP */
|
||||
}
|
||||
|
||||
#ifndef KIOCSRATE
|
||||
@@ -226,7 +232,7 @@ sigalrmhandler(int sig __attribute__((un
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
#ifdef __sparc__
|
||||
- double rate = 5.0; /* Default rate */
|
||||
+ double rate = 20.0; /* Default rate */
|
||||
int delay = 200; /* Default delay */
|
||||
#else
|
||||
double rate = 10.9; /* Default rate */
|
||||
@@ -275,8 +281,9 @@ int main(int argc, char **argv)
|
||||
if (KIOCSRATE_ioctl_ok(rate, delay, silent)) /* sparc? */
|
||||
return 0;
|
||||
|
||||
- /* The ioport way */
|
||||
+ /* The ioport way - will crash on sparc */
|
||||
|
||||
+#ifndef __sparc__
|
||||
for (i = 0; i < RATE_COUNT; i++)
|
||||
if (rate * 10 >= valid_rates[i]) {
|
||||
value &= 0x60;
|
||||
@@ -333,5 +340,6 @@ int main(int argc, char **argv)
|
||||
valid_rates[value & 0x1f] / 10.0,
|
||||
valid_delays[(value & 0x60) >> 5]);
|
||||
|
||||
+#endif
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
21
kbd-1.15-unicode_start.patch
Normal file
21
kbd-1.15-unicode_start.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -up kbd-1.15.2/src/unicode_start.orig kbd-1.15.2/src/unicode_start
|
||||
--- kbd-1.15.2/src/unicode_start.orig 2011-01-05 13:28:22.079662644 +0100
|
||||
+++ kbd-1.15.2/src/unicode_start 2011-01-05 13:29:01.327353698 +0100
|
||||
@@ -72,6 +72,9 @@ stty iutf8
|
||||
# have a Unicode map attached, or explicitly specified, e.g.,
|
||||
# by giving `def.uni' as a second argument.
|
||||
|
||||
+DEFAULT_UNICODE_FONT=latarcyrheb-sun16
|
||||
+# Also drdos8x16 is a good candidate.
|
||||
+
|
||||
case "$#" in
|
||||
2)
|
||||
setfont "$1" -u "$2"
|
||||
@@ -80,6 +83,7 @@ case "$#" in
|
||||
setfont "$1"
|
||||
;;
|
||||
0)
|
||||
+ setfont $DEFAULT_UNICODE_FONT
|
||||
;;
|
||||
*)
|
||||
echo "usage: unicode_start [font [unicode map]]"
|
||||
18
kbd-1.15.3-dumpkeys-man.patch
Normal file
18
kbd-1.15.3-dumpkeys-man.patch
Normal file
@ -0,0 +1,18 @@
|
||||
diff -up kbd-2.0.4/docs/man/man1/dumpkeys.1.in.orig kbd-2.0.4/docs/man/man1/dumpkeys.1.in
|
||||
--- kbd-2.0.4/docs/man/man1/dumpkeys.1.in.orig 2017-01-11 11:12:22.884029413 +0100
|
||||
+++ kbd-2.0.4/docs/man/man1/dumpkeys.1.in 2017-01-11 11:12:47.537040194 +0100
|
||||
@@ -164,6 +164,14 @@ output of
|
||||
.BI \-S shape " " " " \-\-shape= shape
|
||||
.LP
|
||||
.TP
|
||||
+.B \-1 \-\-separate-lines
|
||||
+This forces
|
||||
+.B dumpkeys
|
||||
+to write one line per (modifier,keycode) pair. It prefixes the word
|
||||
+.I plain
|
||||
+for plain keycodes.
|
||||
+.LP
|
||||
+.TP
|
||||
.B \-t \-\-funcs-only
|
||||
When this option is given,
|
||||
.B dumpkeys
|
||||
24
kbd-1.15.5-loadkeys-search-path.patch
Normal file
24
kbd-1.15.5-loadkeys-search-path.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff -up kbd-2.0.4/src/loadkeys.c.orig kbd-2.0.4/src/loadkeys.c
|
||||
--- kbd-2.0.4/src/loadkeys.c.orig 2017-01-11 11:14:48.308093019 +0100
|
||||
+++ kbd-2.0.4/src/loadkeys.c 2017-01-11 11:15:18.018106020 +0100
|
||||
@@ -27,7 +27,7 @@
|
||||
#include "keymap.h"
|
||||
|
||||
static const char *progname = NULL;
|
||||
-static const char *const dirpath1[] = { "", DATADIR "/" KEYMAPDIR "/**", KERNDIR "/", 0 };
|
||||
+static const char *const dirpath1[] = { "", DATADIR "/" KEYMAPDIR "/**", DATADIR "/" XKBKEYMAPDIR "/", DATADIR "/" LEGACYKEYMAPDIR "/**", KERNDIR "/", 0 };
|
||||
static const char *const suffixes[] = { "", ".kmap", ".map", 0 };
|
||||
|
||||
static void __attribute__((noreturn))
|
||||
diff -up kbd-2.0.4/src/paths.h.orig kbd-2.0.4/src/paths.h
|
||||
--- kbd-2.0.4/src/paths.h.orig 2017-01-11 11:15:40.404115812 +0100
|
||||
+++ kbd-2.0.4/src/paths.h 2017-01-11 11:15:59.730124274 +0100
|
||||
@@ -5,6 +5,8 @@
|
||||
* The following five subdirectories are defined:
|
||||
*/
|
||||
#define KEYMAPDIR "keymaps"
|
||||
+#define XKBKEYMAPDIR "keymaps/xkb"
|
||||
+#define LEGACYKEYMAPDIR "keymaps/legacy"
|
||||
#define UNIMAPDIR "unimaps"
|
||||
#define TRANSDIR "consoletrans"
|
||||
#define VIDEOMODEDIR "videomodes"
|
||||
12
kbd-1.15.5-sg-decimal-separator.patch
Normal file
12
kbd-1.15.5-sg-decimal-separator.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kbd-1.15.5/data/keymaps/i386/qwertz/sg.map.orig kbd-1.15.5/data/keymaps/i386/qwertz/sg.map
|
||||
--- kbd-1.15.5/data/keymaps/i386/qwertz/sg.map.orig 2013-02-21 15:54:39.362799094 +0100
|
||||
+++ kbd-1.15.5/data/keymaps/i386/qwertz/sg.map 2013-02-21 15:54:46.448838554 +0100
|
||||
@@ -1,7 +1,7 @@
|
||||
keymaps 0-2,4-6,8,12
|
||||
include "qwertz-layout"
|
||||
include "linux-with-alt-and-altgr.inc"
|
||||
- plain keycode 83 = KP_Comma
|
||||
+ plain keycode 83 = KP_Period
|
||||
strings as usual
|
||||
|
||||
keycode 1 = Escape Escape
|
||||
15
kbd-2.0.2-unicode-start-font.patch
Normal file
15
kbd-2.0.2-unicode-start-font.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff -up kbd-2.0.2/src/unicode_start.orig kbd-2.0.2/src/unicode_start
|
||||
--- kbd-2.0.2/src/unicode_start.orig 2014-08-12 14:47:53.019028849 +0200
|
||||
+++ kbd-2.0.2/src/unicode_start 2014-08-12 14:54:42.631427602 +0200
|
||||
@@ -72,7 +72,10 @@ stty iutf8
|
||||
# have a Unicode map attached, or explicitly specified, e.g.,
|
||||
# by giving `def.uni' as a second argument.
|
||||
|
||||
-DEFAULT_UNICODE_FONT=latarcyrheb-sun16
|
||||
+# Source /etc/vconsole.conf to get default font
|
||||
+. /etc/vconsole.conf
|
||||
+
|
||||
+DEFAULT_UNICODE_FONT=$FONT
|
||||
# Also drdos8x16 is a good candidate.
|
||||
|
||||
case "$#" in
|
||||
BIN
kbd-2.0.4.tar.xz
Normal file
BIN
kbd-2.0.4.tar.xz
Normal file
Binary file not shown.
BIN
kbd-2.2.0.tar.gz
BIN
kbd-2.2.0.tar.gz
Binary file not shown.
52
kbd.spec
52
kbd.spec
@ -1,19 +1,34 @@
|
||||
Name: kbd
|
||||
Version: 2.2.0
|
||||
Release: 1
|
||||
Version: 2.0.4
|
||||
Release: 10
|
||||
Summary: Tools for managing Linux console(keyboard, virtual terminals, etc.)
|
||||
License: GPLv2+
|
||||
URL: https://www.%{name}-project.org/
|
||||
|
||||
Source0: http://ftp.altlinux.org/pub/people/legion/%{name}/%{name}-%{version}.tar.gz
|
||||
Source0: http://ftp.altlinux.org/pub/people/legion/%{name}/%{name}-%{version}.tar.xz
|
||||
Source1: %{name}-latsun-fonts.tar.bz2
|
||||
Source2: %{name}-latarcyrheb-32.tar.bz2
|
||||
Source3: xml2lst.pl
|
||||
Source4: vlock.pamd
|
||||
Source5: kbdinfo.1
|
||||
Source6: cz-map.patch
|
||||
|
||||
Patch0: %{name}-1.15-keycodes-man.patch
|
||||
Patch1: %{name}-1.15-sparc.patch
|
||||
Patch2: %{name}-1.15-unicode_start.patch
|
||||
Patch3: %{name}-1.15.3-dumpkeys-man.patch
|
||||
Patch4: %{name}-1.15.5-sg-decimal-separator.patch
|
||||
Patch5: %{name}-1.15.5-loadkeys-search-path.patch
|
||||
Patch6: %{name}-2.0.2-unicode-start-font.patch
|
||||
|
||||
Patch6000: Check-existance-of-map-before-dumping-it.patch
|
||||
Patch6001: Fix-infinite-loop-of-vlock-if-locked-VC-is-closed.patch
|
||||
Patch6002: setmetamode-use-unsigned-int-type-for-KDGKBMETA-KDSK.patch
|
||||
Patch6003: Fix-memory-leak.patch
|
||||
Patch6004: configure.ac-Fix-logic-of-vlock-configure-switch.patch
|
||||
|
||||
BuildRequires: bison flex gettext pam-devel check-devel
|
||||
BuildRequires: gcc console-setup xkeyboard-config gettext-devel
|
||||
BuildRequires: gcc console-setup xkeyboard-config
|
||||
Requires: %{name}-misc = %{version}-%{release}
|
||||
Requires: %{name}-legacy = %{version}-%{release}
|
||||
Provides: vlock = %{version}
|
||||
@ -36,7 +51,7 @@ keymaps and so on. But %{name}-misc can do nothing without %{name}.
|
||||
%package legacy
|
||||
Summary: Legacy data for %{name} package
|
||||
BuildArch: noarch
|
||||
|
||||
|
||||
%description legacy
|
||||
The %{name}-legacy package contains original keymaps for %{name} package.
|
||||
But %{name}-legacy can do nothing without %{name}.
|
||||
@ -47,6 +62,18 @@ But %{name}-legacy can do nothing without %{name}.
|
||||
%setup -q -a 1 -a 2
|
||||
cp -fp %{SOURCE3} .
|
||||
cp -fp %{SOURCE6} .
|
||||
%patch0 -p1 -b .keycodes-man
|
||||
%patch1 -p1 -b .sparc
|
||||
%patch2 -p1 -b .unicode_start
|
||||
%patch3 -p1 -b .dumpkeys-man
|
||||
%patch4 -p1 -b .sg-decimal-separator
|
||||
%patch5 -p1 -b .loadkeys-search-path
|
||||
%patch6 -p1 -b .unicode-start-font
|
||||
%patch6000 -p1
|
||||
%patch6001 -p1
|
||||
%patch6002 -p1
|
||||
%patch6003 -p1
|
||||
%patch6004 -p1
|
||||
|
||||
pushd data/keymaps/i386
|
||||
cp qwerty/pt-latin9.map qwerty/pt.map
|
||||
@ -57,7 +84,7 @@ cp azerty/fr-latin9.map azerty/fr.map
|
||||
|
||||
cp azerty/fr-latin9.map azerty/fr-latin0.map
|
||||
|
||||
mv dvorak/dvorak-no.map dvorak/no-dvorak.map
|
||||
mv dvorak/no.map dvorak/no-dvorak.map
|
||||
mv fgGIod/trf.map fgGIod/trf-fgGIod.map
|
||||
mv olpc/es.map olpc/es-olpc.map
|
||||
mv olpc/pt.map olpc/pt-olpc.map
|
||||
@ -70,11 +97,8 @@ popd
|
||||
|
||||
iconv -f iso-8859-1 -t utf-8 < "ChangeLog" > "ChangeLog_"
|
||||
mv "ChangeLog_" "ChangeLog"
|
||||
./autogen.sh
|
||||
|
||||
%build
|
||||
|
||||
|
||||
%configure --prefix=%{_prefix} --datadir=/lib/%{name} --mandir=%{_mandir} --localedir=%{_datadir}/locale --enable-nls
|
||||
%make_build
|
||||
|
||||
@ -95,6 +119,8 @@ done
|
||||
sed -i -e 's,\<%{name}_mode\>,/bin/%{name}_mode,g;s,\<setfont\>,/bin/setfont,g' \
|
||||
%{buildroot}/bin/unicode_start
|
||||
|
||||
gzip -c %SOURCE5 > %{buildroot}/%{_mandir}/man1/kbdinfo.1.gz
|
||||
|
||||
cp -r %{buildroot}/lib/%{name}/locale/ %{buildroot}%{_datadir}/locale
|
||||
rm -rf %{buildroot}/lib/%{name}/locale
|
||||
|
||||
@ -118,6 +144,8 @@ while read line; do
|
||||
ckbcomp "$line" | gzip > %{buildroot}/lib/%{name}/keymaps/xkb/"$line".map.gz
|
||||
done < layouts-list-uniq.lst
|
||||
|
||||
zgrep -L "U+0041" %{buildroot}/lib/%{name}/keymaps/xkb/* | xargs rm -f
|
||||
|
||||
gunzip %{buildroot}/lib/%{name}/keymaps/xkb/fi.map.gz
|
||||
mv %{buildroot}/lib/%{name}/keymaps/xkb/fi.map %{buildroot}/lib/%{name}/keymaps/xkb/fi-kotoistus.map
|
||||
gzip %{buildroot}/lib/%{name}/keymaps/xkb/fi-kotoistus.map
|
||||
@ -153,11 +181,5 @@ gzip %{buildroot}/lib/%{name}/keymaps/xkb/cz.map
|
||||
%{_mandir}/man8/*.8.gz
|
||||
|
||||
%changelog
|
||||
* Sat Jan 11 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.2.0-1
|
||||
- Type:bugfix
|
||||
- Id:NA
|
||||
- SUG:NA
|
||||
- DESC:update to 2.2.0
|
||||
|
||||
* Wed Sep 18 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.0.4-10
|
||||
- Package init
|
||||
|
||||
33
kbdinfo.1
Normal file
33
kbdinfo.1
Normal file
@ -0,0 +1,33 @@
|
||||
.TH KBDINFO 1 "June 2011"
|
||||
.SH NAME
|
||||
kbdinfo \- obtain information about the status of a console
|
||||
.SH SYNOPSIS
|
||||
\fBkbdinfo\fR [\-C \fIDEVICE\fR] getmode [text|graphics]
|
||||
.LP
|
||||
\fBkbdinfo\fR [\-C \fIDEVICE\fR] gkbmode [raw|xlate|mediumraw|unicode]
|
||||
.LP
|
||||
\fBkbdinfo\fR [\-C \fIDEVICE\fR] gkbmeta [metabit|escprefix]
|
||||
.LP
|
||||
\fBkbdinfo\fR [\-C \fIDEVICE\fR] gkbled [scrolllock|numlock|capslock]
|
||||
.SH DESCRIPTION
|
||||
.B kbdinfo
|
||||
is an interface to KDGETMODE, GKBMODE, GKBMETA and GKBLED ioctls. Its
|
||||
primary use case is to query the status of the given
|
||||
.I CONSOLE
|
||||
(or the currently active one, if no \-C option is present) from a shell
|
||||
script.
|
||||
.LP
|
||||
If the final value argument is not specified,
|
||||
.B kbdinfo
|
||||
will print the result of the desired ioctl to the standard output.
|
||||
Otherwise, the given value is compared to the actual result, and the
|
||||
utility will exit with a status code of 0 for a match, 1 otherwise. No
|
||||
text is printed for this style of invocation.
|
||||
.SH "SEE ALSO"
|
||||
.BR kbd_mode (1)
|
||||
.SH AUTHOR
|
||||
kbdinfo is Copyright \(co 2011 Alexey Gladkov
|
||||
<gladkov.alexey@gmail.com>.
|
||||
.LP
|
||||
This manual page was written by Michael Schutte <michi@debian.org> for
|
||||
the Debian GNU/Linux system (but may be used by others).
|
||||
45
setmetamode-use-unsigned-int-type-for-KDGKBMETA-KDSK.patch
Normal file
45
setmetamode-use-unsigned-int-type-for-KDGKBMETA-KDSK.patch
Normal file
@ -0,0 +1,45 @@
|
||||
From 6613abc26a853293c12f4e146a27606f02c8dd03 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Henriksson <andreas@fatal.se>
|
||||
Date: Mon, 28 May 2018 21:19:22 +0200
|
||||
Subject: [PATCH] setmetamode: use unsigned int type for KDGKBMETA / KDSKBMETA
|
||||
|
||||
alsauser@pragmasoft.com reported that he detected a stack smash
|
||||
and analyzed the problem as allocating too little space for
|
||||
the resulting put_user after calling ioctl KDGKBMETA.
|
||||
The ometa variable should be defined as unsigned int.
|
||||
|
||||
While at it and for correctness, also nmeta and thus the
|
||||
val member of the struct meta where changed to unsigned
|
||||
int as it seems the kernel wants to take this type
|
||||
(but should be harmless to use char).
|
||||
|
||||
Original bug report at https://bugs.debian.org/872623
|
||||
---
|
||||
src/setmetamode.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/setmetamode.c b/src/setmetamode.c
|
||||
index 8d75b94..adec0e9 100644
|
||||
--- a/src/setmetamode.c
|
||||
+++ b/src/setmetamode.c
|
||||
@@ -50,7 +50,7 @@ report(int meta)
|
||||
|
||||
struct meta {
|
||||
char *name;
|
||||
- int val;
|
||||
+ unsigned int val;
|
||||
} metas[] = {
|
||||
{ "metabit", K_METABIT },
|
||||
{ "meta", K_METABIT },
|
||||
@@ -64,7 +64,7 @@ struct meta {
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
- char ometa, nmeta;
|
||||
+ unsigned int ometa, nmeta;
|
||||
struct meta *mp;
|
||||
|
||||
set_progname(argv[0]);
|
||||
--
|
||||
2.21.0.windows.1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user