Mageia Bugzilla – Attachment 4957 Details for
Bug 12599
Add i18n support in dosbox
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
New Account
|
Forgot Password
[patch]
patch for spec
spec.diff (text/plain), 4.78 KB, created by
Alex Loginov
on 2014-02-07 17:16:31 CET
(
hide
)
Description:
patch for spec
Filename:
MIME Type:
Creator:
Alex Loginov
Created:
2014-02-07 17:16:31 CET
Size:
4.78 KB
patch
obsolete
>Index: dosbox.spec >=================================================================== >--- dosbox.spec (revision 585034) >+++ dosbox.spec (working copy) >@@ -1,12 +1,17 @@ >+%define Werror_cflags %nil >+ > Name: dosbox > Version: 0.74 >-Release: %mkrel 7 >+Release: %mkrel 18 > Summary: Free Open Source DOS emulator to run old DOS games > Source0: http://prdownloads.sourceforge.net/dosbox/%{name}-%{version}.tar.bz2 >+Source1: DOSBox-russian-lang.zip >+# From ~/.dosbox after the first dosbox run >+Source2: %{name}-%{version}.conf > Patch0: %{name}-%{version}-fix-str-fmt.patch > # From openSUSE: > # https://build.opensuse.org/package/view_file?file=gcc46.patch&package=dosbox&project=Emulators >-Patch1: %{name}-%{version}-gcc47.patch >+Patch1: %{name}-%{version}-gcc47.patch > License: GPLv2+ > Group: Emulators > URL: http://dosbox.sourceforge.net/ >@@ -16,6 +21,7 @@ > BuildRequires: SDL_sound-devel > BuildRequires: mesaglu-devel > BuildRequires: icoutils >+BuildRequires: unzip > > %description > DOSBox is a DOS-emulator that uses the SDL-library which makes >@@ -32,9 +38,22 @@ > it can run plenty of the old classics that don't run on your > new computer! > >+Full list of tested games successfully supported by DOSBox >+is published on the http://dosbox.sourceforge.net site. >+ >+Run it as following: >+ * dosbox /path/to/game.exe >+ * dosbox /path/to/gamedir >+Examples: >+ * dosbox /tmp/old-games/ugh.exe >+ ...maps given directory to drive C: and start given EXE/COM/BAT-file >+ * dosbox /usr/local/games >+ ...maps given directory to drive C: and start built-in COMMAND.COM >+ > %prep > %setup -q > %apply_patches >+cp -f %{SOURCE2} ./ > > %build > %configure2_5x --enable-core-inline >@@ -42,7 +61,6 @@ > > %install > %makeinstall >-rm -rf %{buildroot}%{_datadir}/doc/%{name} > > mkdir -p %{buildroot}%{_datadir}/applications > cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << EOF >@@ -55,17 +73,76 @@ > Type=Application > StartupNotify=true > Categories=Emulator; >+GenericName[ru]=ÐмÑлÑÑÐ¾Ñ DOS >+Comment[ru]=ÐмÑлÑÑÐ¾Ñ DOS/8086/VGA > EOF > >+# install DOSBox-russian-docs >+%__mkdir_p %{buildroot}/%{_docdir}/%{name}/ >+unzip %{SOURCE1} -d %{buildroot}/%{_docdir}/%{name}/ >+ >+# Create script dosbox-set-lang >+cat > %{buildroot}/%{_bindir}/%{name}-set-lang << EOF >+#!/bin/bash >+# >+# This script is distributed under terms of GPLv2 or later >+# Copyright (C) Anton Chernyshov <ach@altlinux.org> >+# AlexL <loginov.alex.valer@gmail.com> >+# >+# Encoding in this file is UTF-8 >+# >+# This is a simple script that set default DOSBox language >+# to English or Russian language. >+# It requires setting one parameter: en or ru, >+# which would set needed language. >+# >+# ÐÑо пÑоÑÑой ÑкÑипÑ, пеÑеклÑÑаÑÑий иÑполÑзÑемÑй DOSBox >+# ÑзÑк на ÑказаннÑй полÑзоваÑелем. >+# СкÑипÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑказаÑÑ Ð¾Ð´Ð¸Ð½ паÑамеÑÑ: en или ru, >+# коÑоÑÑй и ÑÑÑÐ°Ð½Ð¾Ð²Ð¸Ñ Ð½ÑжнÑй ÑзÑк. >+# >+ >+if [ -f ~/.%name/%name-%version.conf ]; then >+ echo "File ~/.%name/%name-%version.conf exist. GOOD!"; >+ echo "Файл ~/.%name/%name-%version.conf ÑÑÑеÑÑвÑеÑ. Ð¥ÐÐ ÐШÐ!"; >+else >+ mkdir -p ~/.%name >+ cp -f %_docdir/%name/%name-%version.conf ~/.%name/ >+ echo "File ~/.%name/%name-%version.conf doesn't exist. Created!" >+ echo "Файл ~/.%name/%name-%version.conf не ÑÑÑеÑÑвÑеÑ. Создан!" >+fi >+ >+case \$1 in >+ru) >+ sed -i -e 's|^language=.*|language=%_docdir/%name/DOSBox-russian-lang/russian.txt|g' ~/.%name/%name-%version.conf >+ sed -i -e 's|^keyboardlayout=.*|keyboardlayout=RU|g' ~/.%name/%name-%version.conf >+ echo "Set DOSBox language to Russian" >+ echo "ЯзÑк DOSBox бÑл ÑÑÑановлен ÑÑÑÑким" >+ ;; >+en) >+ sed -i -e 's|^language=.*|language=|g' ~/.%name/%name-%version.conf >+ sed -i -e 's|^keyboardlayout=.*|keyboardlayout=auto|g' ~/.%name/%name-%version.conf >+ echo "Set DOSBox language to English" >+ echo "ЯзÑк DOSBox бÑл ÑÑÑановлен английÑким" >+ ;; >+*) >+ echo "Please set correct options: en or ru" >+ echo "ÐожалÑйÑÑа, ÑкажиÑе Ð¾Ð´Ð½Ñ Ð¸Ð· опÑий: en или ru" >+ ;; >+esac >+EOF >+ >+%__chmod +x %{buildroot}/%{_bindir}/%{name}-set-lang >+ > icotool -x -i 1 -o %{name}.png src/%{name}.ico >-#mkdir -p %{buildroot}%{_iconsdir}/hicolor/256x256/apps > install -m 0644 %{name}.png -D %{buildroot}%{_iconsdir}/hicolor/256x256/apps/%{name}.png > > %files >-%doc AUTHORS ChangeLog NEWS README THANKS >+%doc AUTHORS ChangeLog NEWS README THANKS docs/{README.video,PORTING} %{name}-%{version}.conf > %defattr(755,root,root,755) > %{_bindir}/%{name} >+%{_bindir}/%{name}-set-lang > %defattr(644,root,root,755) > %{_mandir}/*/* > %{_datadir}/applications/*.desktop >-%{_datadir}/icons/hicolor/*/apps/%{name}.png >+%{_iconsdir}/hicolor/*/apps/%{name}.png
Index: dosbox.spec =================================================================== --- dosbox.spec (revision 585034) +++ dosbox.spec (working copy) @@ -1,12 +1,17 @@ +%define Werror_cflags %nil + Name: dosbox Version: 0.74 -Release: %mkrel 7 +Release: %mkrel 18 Summary: Free Open Source DOS emulator to run old DOS games Source0: http://prdownloads.sourceforge.net/dosbox/%{name}-%{version}.tar.bz2 +Source1: DOSBox-russian-lang.zip +# From ~/.dosbox after the first dosbox run +Source2: %{name}-%{version}.conf Patch0: %{name}-%{version}-fix-str-fmt.patch # From openSUSE: # https://build.opensuse.org/package/view_file?file=gcc46.patch&package=dosbox&project=Emulators -Patch1: %{name}-%{version}-gcc47.patch +Patch1: %{name}-%{version}-gcc47.patch License: GPLv2+ Group: Emulators URL: http://dosbox.sourceforge.net/ @@ -16,6 +21,7 @@ BuildRequires: SDL_sound-devel BuildRequires: mesaglu-devel BuildRequires: icoutils +BuildRequires: unzip %description DOSBox is a DOS-emulator that uses the SDL-library which makes @@ -32,9 +38,22 @@ it can run plenty of the old classics that don't run on your new computer! +Full list of tested games successfully supported by DOSBox +is published on the http://dosbox.sourceforge.net site. + +Run it as following: + * dosbox /path/to/game.exe + * dosbox /path/to/gamedir +Examples: + * dosbox /tmp/old-games/ugh.exe + ...maps given directory to drive C: and start given EXE/COM/BAT-file + * dosbox /usr/local/games + ...maps given directory to drive C: and start built-in COMMAND.COM + %prep %setup -q %apply_patches +cp -f %{SOURCE2} ./ %build %configure2_5x --enable-core-inline @@ -42,7 +61,6 @@ %install %makeinstall -rm -rf %{buildroot}%{_datadir}/doc/%{name} mkdir -p %{buildroot}%{_datadir}/applications cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << EOF @@ -55,17 +73,76 @@ Type=Application StartupNotify=true Categories=Emulator; +GenericName[ru]=ÐмÑлÑÑÐ¾Ñ DOS +Comment[ru]=ÐмÑлÑÑÐ¾Ñ DOS/8086/VGA EOF +# install DOSBox-russian-docs +%__mkdir_p %{buildroot}/%{_docdir}/%{name}/ +unzip %{SOURCE1} -d %{buildroot}/%{_docdir}/%{name}/ + +# Create script dosbox-set-lang +cat > %{buildroot}/%{_bindir}/%{name}-set-lang << EOF +#!/bin/bash +# +# This script is distributed under terms of GPLv2 or later +# Copyright (C) Anton Chernyshov <ach@altlinux.org> +# AlexL <loginov.alex.valer@gmail.com> +# +# Encoding in this file is UTF-8 +# +# This is a simple script that set default DOSBox language +# to English or Russian language. +# It requires setting one parameter: en or ru, +# which would set needed language. +# +# ÐÑо пÑоÑÑой ÑкÑипÑ, пеÑеклÑÑаÑÑий иÑполÑзÑемÑй DOSBox +# ÑзÑк на ÑказаннÑй полÑзоваÑелем. +# СкÑипÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑказаÑÑ Ð¾Ð´Ð¸Ð½ паÑамеÑÑ: en или ru, +# коÑоÑÑй и ÑÑÑÐ°Ð½Ð¾Ð²Ð¸Ñ Ð½ÑжнÑй ÑзÑк. +# + +if [ -f ~/.%name/%name-%version.conf ]; then + echo "File ~/.%name/%name-%version.conf exist. GOOD!"; + echo "Файл ~/.%name/%name-%version.conf ÑÑÑеÑÑвÑеÑ. Ð¥ÐÐ ÐШÐ!"; +else + mkdir -p ~/.%name + cp -f %_docdir/%name/%name-%version.conf ~/.%name/ + echo "File ~/.%name/%name-%version.conf doesn't exist. Created!" + echo "Файл ~/.%name/%name-%version.conf не ÑÑÑеÑÑвÑеÑ. Создан!" +fi + +case \$1 in +ru) + sed -i -e 's|^language=.*|language=%_docdir/%name/DOSBox-russian-lang/russian.txt|g' ~/.%name/%name-%version.conf + sed -i -e 's|^keyboardlayout=.*|keyboardlayout=RU|g' ~/.%name/%name-%version.conf + echo "Set DOSBox language to Russian" + echo "ЯзÑк DOSBox бÑл ÑÑÑановлен ÑÑÑÑким" + ;; +en) + sed -i -e 's|^language=.*|language=|g' ~/.%name/%name-%version.conf + sed -i -e 's|^keyboardlayout=.*|keyboardlayout=auto|g' ~/.%name/%name-%version.conf + echo "Set DOSBox language to English" + echo "ЯзÑк DOSBox бÑл ÑÑÑановлен английÑким" + ;; +*) + echo "Please set correct options: en or ru" + echo "ÐожалÑйÑÑа, ÑкажиÑе Ð¾Ð´Ð½Ñ Ð¸Ð· опÑий: en или ru" + ;; +esac +EOF + +%__chmod +x %{buildroot}/%{_bindir}/%{name}-set-lang + icotool -x -i 1 -o %{name}.png src/%{name}.ico -#mkdir -p %{buildroot}%{_iconsdir}/hicolor/256x256/apps install -m 0644 %{name}.png -D %{buildroot}%{_iconsdir}/hicolor/256x256/apps/%{name}.png %files -%doc AUTHORS ChangeLog NEWS README THANKS +%doc AUTHORS ChangeLog NEWS README THANKS docs/{README.video,PORTING} %{name}-%{version}.conf %defattr(755,root,root,755) %{_bindir}/%{name} +%{_bindir}/%{name}-set-lang %defattr(644,root,root,755) %{_mandir}/*/* %{_datadir}/applications/*.desktop -%{_datadir}/icons/hicolor/*/apps/%{name}.png +%{_iconsdir}/hicolor/*/apps/%{name}.png
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 12599
:
4957
|
4958
|
4959
|
4984