Browse Source

kbd-2.0.4-1

git-svn-id: http://trac.vinelinux.org/repos/projects/specs@11192 ec354946-7b23-47d6-9f5a-488ba84defc7
tomop 7 years ago
parent
commit
6eca25cdef
1 changed files with 126 additions and 62 deletions
  1. 126 62
      k/kbd/kbd-vl.spec

+ 126 - 62
k/kbd/kbd-vl.spec

@@ -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