|
@@ -1,31 +1,41 @@
|
|
|
+%global convert_xkb 0
|
|
|
+
|
|
|
Summary: Tools for configuring the console (keyboard, virtual terminals, etc.)
|
|
|
Summary(ja): コンソール(キーボードや仮想ターミナル等)を設定するツール群
|
|
|
Name: kbd
|
|
|
-Version: 1.12
|
|
|
-Release: 22%{?_dist_release}
|
|
|
+Version: 2.0.4
|
|
|
+Release: 1%{?_dist_release}
|
|
|
License: GPL
|
|
|
Group: System Environment/Base
|
|
|
-Source0: ftp://ftp.kernel.org/pub/linux/utils/kbd/kbd-%{version}.tar.bz2
|
|
|
-Source1: ftp://ftp.kernel.org/pub/linux/utils/kbd/kbd-%{version}.tar.bz2.sign
|
|
|
-#Source2: kbdrate.apps
|
|
|
-#Source3: kbdrate.pam
|
|
|
-Source4: kbd-latsun-fonts.tar.bz2
|
|
|
+Source0: https://www.kernel.org/pub/linux/utils/kbd/kbd-%{version}.tar.xz
|
|
|
+Source1: kbd-latsun-fonts.tar.bz2
|
|
|
+Source2: kbd-latarcyrheb-32.tar.bz2
|
|
|
+Source3: xml2lst.pl
|
|
|
+Source4: vlock.pamd
|
|
|
+Source5: kbdinfo.1
|
|
|
+Source6: cz-map.patch
|
|
|
Requires: pam >= 0.66-4, /etc/pam.d/system-auth, usermode
|
|
|
-BuildRequires: bison, flex, gettext
|
|
|
+BuildRequires: bison, flex, gettext, pam-devel
|
|
|
+%if 0%{convert_xkb}
|
|
|
+BuildRequires: console-setup
|
|
|
+%endif
|
|
|
BuildRoot: %{_tmppath}/%{name}-root
|
|
|
-Patch0: kbd-1.12-sparc.patch
|
|
|
-Patch1: kbd-1.08-compose.patch
|
|
|
-Patch2: kbd-1.08-terminal.patch
|
|
|
-Patch3: kbd-1.08-rukbd.patch
|
|
|
-Patch4: kbd-1.12-setfont-man.patch
|
|
|
-Patch5: kbd-1.12-Meta_utf8.patch
|
|
|
-Patch6: kbd-1.12-nostrip.patch
|
|
|
-Patch7: kbd-1.12-alias.patch
|
|
|
-Patch8: kbd-1.12-dir.patch
|
|
|
-Patch9: kbd-1.12-no-user-map.patch
|
|
|
-Patch10: kbd-1.12-resizecon-man.patch
|
|
|
-Patch11: kbd-1.12-gr-el.patch
|
|
|
-Patch12: kbd-1.12-keycodes-man.patch
|
|
|
+# Patch0: puts additional information into man pages
|
|
|
+Patch0: kbd-1.15-keycodes-man.patch
|
|
|
+# Patch1: sparc modifications
|
|
|
+Patch1: kbd-1.15-sparc.patch
|
|
|
+# Patch2: adds default unicode font to unicode_start script
|
|
|
+Patch2: kbd-1.15-unicode_start.patch
|
|
|
+# Patch3: add missing dumpkeys option to man page
|
|
|
+Patch3: kbd-1.15.3-dumpkeys-man.patch
|
|
|
+# Patch4: fixes decimal separator in Swiss German keyboard layout, bz 882529
|
|
|
+Patch4: kbd-1.15.5-sg-decimal-separator.patch
|
|
|
+# Patch5: adds xkb and legacy keymaps subdirs to loadkyes search path, bz 1028207
|
|
|
+Patch5: kbd-1.15.5-loadkeys-search-path.patch
|
|
|
+# Patch6: don't hardcode font used in unicode_start, take it from vconsole.conf,
|
|
|
+# bz 1101007
|
|
|
+Patch6: kbd-2.0.2-unicode-start-font.patch
|
|
|
+
|
|
|
Obsoletes: console-tools open
|
|
|
Provides: console-tools open
|
|
|
Conflicts: util-linux < 2.11r-9
|
|
@@ -42,25 +52,21 @@ fonts, the virtual terminals and font files.
|
|
|
|
|
|
%prep
|
|
|
|
|
|
-%setup -q -a 4
|
|
|
-%patch0 -p1 -b .sparc
|
|
|
-%patch1 -p1
|
|
|
-%patch2 -p1 -b .terminal
|
|
|
-%patch3 -p1
|
|
|
-%patch4 -p1 -b .man
|
|
|
-%patch5 -p1 -b .Meta_utf8
|
|
|
-%patch6 -p1 -b .nostrip
|
|
|
-%patch7 -p1 -b .alias
|
|
|
-%patch8 -p1 -b .dir
|
|
|
-%patch9 -p1 -b .no-user-map
|
|
|
-%patch10 -p1 -b .resizecon-man
|
|
|
-%patch11 -p1 -b .gr-el
|
|
|
-%patch12 -p1 -b .keycodes-man
|
|
|
+%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
|
|
|
+%if 0%{convert_xkb}
|
|
|
+%patch5 -p1 -b .loadkeys-search-path
|
|
|
+%endif
|
|
|
+%patch6 -p1 -b .unicode-start-font
|
|
|
|
|
|
# 7-bit maps are obsolete; so are non-euro maps
|
|
|
pushd data/keymaps/i386
|
|
|
-mv qwerty/fi.map qwerty/fi-old.map
|
|
|
-cp qwerty/fi-latin9.map qwerty/fi.map
|
|
|
cp qwerty/pt-latin9.map qwerty/pt.map
|
|
|
cp qwerty/sv-latin1.map qwerty/se-latin1.map
|
|
|
|
|
@@ -68,10 +74,23 @@ mv azerty/fr.map azerty/fr-old.map
|
|
|
cp azerty/fr-latin9.map azerty/fr.map
|
|
|
|
|
|
cp azerty/fr-latin9.map azerty/fr-latin0.map # legacy alias
|
|
|
+
|
|
|
+# Rename conflicting keymaps
|
|
|
+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
|
|
|
+mv qwerty/cz.map qwerty/cz-qwerty.map
|
|
|
popd
|
|
|
|
|
|
-# Default to latarcyrheb-sun16 font for unicode
|
|
|
-perl -pi -e 's/LatArCyrHeb-16/latarcyrheb-sun16/' src/unicode_start
|
|
|
+# remove obsolete "gr" translation
|
|
|
+pushd po
|
|
|
+rm -f gr.po gr.gmo
|
|
|
+popd
|
|
|
+
|
|
|
+# Convert to utf-8
|
|
|
+iconv -f iso-8859-1 -t utf-8 < "ChangeLog" > "ChangeLog_"
|
|
|
+mv "ChangeLog_" "ChangeLog"
|
|
|
|
|
|
%build
|
|
|
export OLD_PO_FILE_INPUT=yes
|
|
@@ -79,11 +98,9 @@ export OLD_PO_FILE_INPUT=yes
|
|
|
# We don't use % {configure} because the ./configure included here does not
|
|
|
# understand most of the options.
|
|
|
CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
|
|
|
-./configure --prefix=%{_prefix} --datadir=/lib/kbd --mandir=%{_mandir}
|
|
|
-
|
|
|
-# Override CFLAGS because this configure ignores them anyway, and LDFLAGS
|
|
|
-# because it defaults to -s, but that's a build policy decision.
|
|
|
-make CFLAGS="$RPM_OPT_FLAGS" LDFLAGS=
|
|
|
+#./configure --prefix=%{_prefix} --datadir=/lib/kbd --mandir=%{_mandir}
|
|
|
+%configure --prefix=%{_prefix} --datadir=/lib/kbd --mandir=%{_mandir} --localedir=%{_datadir}/locale --enable-nls
|
|
|
+make %{?_smp_mflags}
|
|
|
|
|
|
%install
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
@@ -91,34 +108,76 @@ rm -rf $RPM_BUILD_ROOT
|
|
|
# Basic install.
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
|
|
+# Create additional name for Serbian latin keyboard
|
|
|
+ln -s sr-cy.map.gz $RPM_BUILD_ROOT/lib/kbd/keymaps/i386/qwerty/sr-latin.map.gz
|
|
|
+
|
|
|
# The rhpl keyboard layout table is indexed by kbd layout names, so we need a
|
|
|
# Korean keyboard
|
|
|
ln -s us.map.gz $RPM_BUILD_ROOT/lib/kbd/keymaps/i386/qwerty/ko.map.gz
|
|
|
|
|
|
# Move binaries which we use before /usr is mounted from %{_bindir} to /bin.
|
|
|
-for binary in setfont dumpkeys kbd_mode unicode_start unicode_stop ; do
|
|
|
- mv $RPM_BUILD_ROOT%{_bindir}/$binary $RPM_BUILD_ROOT/bin
|
|
|
+mkdir -p $RPM_BUILD_ROOT/bin
|
|
|
+for binary in setfont dumpkeys kbd_mode unicode_start unicode_stop loadkeys ; do
|
|
|
+
|
|
|
+ mv $RPM_BUILD_ROOT%{_bindir}/$binary $RPM_BUILD_ROOT/bin/
|
|
|
done
|
|
|
|
|
|
# Some microoptimization
|
|
|
sed -i -e 's,\<kbd_mode\>,/bin/kbd_mode,g;s,\<setfont\>,/bin/setfont,g' \
|
|
|
- $RPM_BUILD_ROOT/bin/unicode_start
|
|
|
-
|
|
|
-
|
|
|
-# Set up kbdrate to be userhelpered.
|
|
|
-#mkdir -p $RPM_BUILD_ROOT%{_sbindir}
|
|
|
-#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/security/console.apps
|
|
|
-#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d
|
|
|
-#mv $RPM_BUILD_ROOT%{_bindir}/kbdrate $RPM_BUILD_ROOT%{_sbindir}
|
|
|
-#ln -s consolehelper $RPM_BUILD_ROOT%{_bindir}/kbdrate
|
|
|
-#install -c -m644 %{SOURCE2} \
|
|
|
-# $RPM_BUILD_ROOT%{_sysconfdir}/security/console.apps/kbdrate
|
|
|
-#install -c -m644 %{SOURCE3} \
|
|
|
-# $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/kbdrate
|
|
|
-rm -f %{buildroot}/%{_bindir}/kbdrate
|
|
|
+ $RPM_BUILD_ROOT/bin/unicode_start
|
|
|
|
|
|
# Link open to openvt
|
|
|
ln -s openvt $RPM_BUILD_ROOT%{_bindir}/open
|
|
|
+ln -s openvt.1.gz $RPM_BUILD_ROOT%{_mandir}/man1/open.1.gz
|
|
|
+
|
|
|
+# install kbdinfo manpage
|
|
|
+gzip -c %SOURCE5 > $RPM_BUILD_ROOT/%{_mandir}/man1/kbdinfo.1.gz
|
|
|
+
|
|
|
+# Move locale files to correct place
|
|
|
+cp -r $RPM_BUILD_ROOT/lib/kbd/locale/ $RPM_BUILD_ROOT%{_datadir}/locale
|
|
|
+rm -rf $RPM_BUILD_ROOT/lib/kbd/locale
|
|
|
+
|
|
|
+# Install PAM configuration for vlock
|
|
|
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d
|
|
|
+install -m 644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/vlock
|
|
|
+
|
|
|
+%if 0%{convert_xkb}
|
|
|
+# Move original keymaps to legacy directory
|
|
|
+mkdir -p $RPM_BUILD_ROOT/lib/kbd/keymaps/legacy
|
|
|
+mv $RPM_BUILD_ROOT/lib/kbd/keymaps/{amiga,atari,i386,include,mac,ppc,sun} $RPM_B
|
|
|
+UILD_ROOT/lib/kbd/keymaps/legacy
|
|
|
+
|
|
|
+# Convert X keyboard layouts to console keymaps
|
|
|
+mkdir -p $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb
|
|
|
+perl xml2lst.pl < /usr/share/X11/xkb/rules/base.xml > layouts-variants.lst
|
|
|
+while read line; do
|
|
|
+ XKBLAYOUT=`echo "$line" | cut -d " " -f 1`
|
|
|
+ echo "$XKBLAYOUT" >> layouts-list.lst
|
|
|
+ XKBVARIANT=`echo "$line" | cut -d " " -f 2`
|
|
|
+ ckbcomp "$XKBLAYOUT" "$XKBVARIANT" | gzip > $RPM_BUILD_ROOT/lib/kbd/keymaps/xk
|
|
|
+b/"$XKBLAYOUT"-"$XKBVARIANT".map.gz
|
|
|
+done < layouts-variants.lst
|
|
|
+
|
|
|
+# Convert X keyboard layouts (plain, no variant)
|
|
|
+cat layouts-list.lst | sort -u >> layouts-list-uniq.lst
|
|
|
+while read line; do
|
|
|
+ ckbcomp "$line" | gzip > $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/"$line".map.gz
|
|
|
+done < layouts-list-uniq.lst
|
|
|
+
|
|
|
+# wipe converted layouts which cannot input ASCII (#1031848)
|
|
|
+zgrep -L "U+0041" $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/* | xargs rm -f
|
|
|
+
|
|
|
+# Rename the converted default fi (kotoistus) layout (#1117891)
|
|
|
+gunzip $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/fi.map.gz
|
|
|
+mv $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/fi.map $RPM_BUILD_ROOT/lib/kbd/keymaps/xk
|
|
|
+b/fi-kotoistus.map
|
|
|
+gzip $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/fi-kotoistus.map
|
|
|
+
|
|
|
+# Fix converted cz layout - add compose rules
|
|
|
+gunzip $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/cz.map.gz
|
|
|
+patch $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/cz.map < %{SOURCE6}
|
|
|
+gzip $RPM_BUILD_ROOT/lib/kbd/keymaps/xkb/cz.map
|
|
|
+%endif
|
|
|
|
|
|
%find_lang %{name}
|
|
|
|
|
@@ -130,14 +189,19 @@ ln -s openvt $RPM_BUILD_ROOT%{_bindir}/open
|
|
|
|
|
|
%files -f %{name}.lang
|
|
|
%defattr(-,root,root)
|
|
|
-%doc CHANGES CREDITS README doc/kbd.FAQ*.html doc/font-formats/*.html doc/utf/utf*
|
|
|
+%doc ChangeLog AUTHORS README COPYING docs/doc/kbd.FAQ*.html docs/doc/font-formats/*.html docs/doc/utf/utf* docs/doc/dvorak/*
|
|
|
/bin/*
|
|
|
%{_bindir}/*
|
|
|
%{_mandir}/*/*
|
|
|
/lib/kbd
|
|
|
+%config(noreplace) %{_sysconfdir}/pam.d/vlock
|
|
|
+
|
|
|
|
|
|
%changelog
|
|
|
-* Mon Dec 30 2013 oji TOYODA <bsyamato@sea.plala.or.jp> 1.12-22
|
|
|
+* Sun Sep 24 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.0.4-1
|
|
|
+- new upstream release.
|
|
|
+
|
|
|
+* Mon Dec 30 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.12-22
|
|
|
- rebuild with VineSeed environment
|
|
|
|
|
|
* Fri Aug 15 2008 Shu KONNO <owa@bg.wakwak.com> 1.12-21vl5
|