diff --git a/.gitignore b/.gitignore index 245929b..a0b508c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ rott-1.1.tar.gz +/rott-1.1.2.tar.gz diff --git a/rott-1.0-registered.patch b/rott-1.0-registered.patch deleted file mode 100644 index e14062c..0000000 --- a/rott-1.0-registered.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- rott-1.0/rott/develop.h~ 2007-05-11 10:24:32.000000000 +0200 -+++ rott-1.0/rott/develop.h 2007-05-11 10:24:32.000000000 +0200 -@@ -41,8 +41,8 @@ - - #define BNACRASHPREVENT 1 //bna added - // Make sure only one of the following are on at one time --#define SHAREWARE 1 --#define SUPERROTT 0 -+#define SHAREWARE 0 -+#define SUPERROTT 1 - #define SITELICENSE 0 - - // cute little dopefish thing, only works with special patch? diff --git a/rott-1.1-fix-end-level-display.patch b/rott-1.1-fix-end-level-display.patch deleted file mode 100644 index 4485bf6..0000000 --- a/rott-1.1-fix-end-level-display.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up rott-1.1/rott/rt_game.c~ rott-1.1/rott/rt_game.c ---- rott-1.1/rott/rt_game.c~ 2008-08-04 23:36:53.000000000 +0200 -+++ rott-1.1/rott/rt_game.c 2008-08-04 23:36:53.000000000 +0200 -@@ -3426,7 +3426,7 @@ void LevelCompleted - tmpPic = ( pic_t * )W_CacheLumpName( "mmbk", PU_CACHE, Cvt_pic_t, 1 ); - VWB_DrawPic( 0, 0, tmpPic ); - VW_UpdateScreen(); -- DisableScreenStretch(); -+// DisableScreenStretch(); - - IN_StartAck(); - EndBonusVoice = 0; -@@ -3759,7 +3759,7 @@ EndBonusSkip = true; - - - //bna section -- EnableScreenStretch();//bna++ -+// EnableScreenStretch();//bna++ - VW_UpdateScreen();//bna++ - // DisableScreenStretch();//bna++ - //bna section end diff --git a/rott-1.1-gameover.patch b/rott-1.1-gameover.patch deleted file mode 100644 index 9ac3a9a..0000000 --- a/rott-1.1-gameover.patch +++ /dev/null @@ -1,85 +0,0 @@ ---- rott-1.1/rott/rt_vid.c 2008-05-24 08:29:59.000000000 +0200 -+++ rott-1.1.new/rott/rt_vid.c 2008-08-04 23:02:04.000000000 +0200 -@@ -1099,38 +1100,23 @@ - - void VL_DecompressLBM (lbm_t *lbminfo, boolean flip) - { -- byte *screen = (byte *)bufferofs; -- byte *orig; -- int count; -- byte b, -- rept; -+ int count; -+ byte b, rept; - byte *source = (byte *)&lbminfo->data; - byte *buf; - int ht = lbminfo->height; -- -- int x = 0; -- int y; -- byte *origbuf; - byte pal[768]; -- -- -- orig = screen; -- -- if (iGLOBAL_SCREENWIDTH <= 320){ -- buf = (byte *) SafeMalloc (64000); -- }else{ -- buf = (byte *) SafeMalloc (iGLOBAL_SCREENWIDTH*iGLOBAL_SCREENHEIGHT); -- } -- origbuf = buf; -- -- VL_ClearBuffer (displayofs, 0); -- -+ -+ EnableScreenStretch(); -+ - memcpy(&pal[0],lbminfo->palette,768); - - VL_NormalizePalette (&pal[0]); - - VW_MarkUpdateBlock (0, 0, 320, 200); - -+ buf = (byte *)bufferofs; -+ - while (ht--) - { - count = 0; -@@ -1163,36 +1149,7 @@ - buf += (iGLOBAL_SCREENWIDTH-320); //eg 800 - 320) - } - } -- //SetTextMode ( ); //12345678 -- -- { -- int cnt; -- -- cnt = 0; -- screen = orig; -- buf = origbuf; -- VGAMAPMASK (writemask); -- -- //bna section start -- if (iGLOBAL_SCREENWIDTH <= 320){ -- for (y = 0; y < (lbminfo->height*lbminfo->width); y++) -- -- { -- *screen++ = *(buf+y); -- } -- }else{ -- for (y = 0; y < (lbminfo->height); y++){ -- for (x = 0; x < iGLOBAL_SCREENWIDTH; x++){ -- *screen++ = *(buf++); -- } -- } -- } -- // bna section end -- -- } - -- SafeFree(origbuf); -- EnableScreenStretch();//bna++ shut on streech mode - if (flip==true) - VW_UpdateScreen (); - diff --git a/rott-registered.desktop b/rott-registered.desktop index 0212bae..e90880e 100644 --- a/rott-registered.desktop +++ b/rott-registered.desktop @@ -1,10 +1,10 @@ [Desktop Entry] -Encoding=UTF-8 Name=Rise of the Triad (Registered) Comment=RotT Registered launch script, this requires the registered data files Exec=rott-registered StartupNotify=false Terminal=false Type=Application -Icon=rott.png +Icon=rott Categories=Game;ActionGame; +Keywords=game;fps;first;person;shooter;rise;triad;rott; diff --git a/rott-registered.metainfo.xml b/rott-registered.metainfo.xml new file mode 100644 index 0000000..b479aac --- /dev/null +++ b/rott-registered.metainfo.xml @@ -0,0 +1,13 @@ + + + rott-registered.desktop + rott-shareware.desktop + CC0-1.0 + GPL-2.0+ + Engine for Rise of the Triad registered + + Place the registered Rise of the Triad datafiles under /usr/share/rott/ + + http://icculus.org/rott/ + jwrdegoede_at_gmail.com + diff --git a/rott-registered.sh b/rott-registered.sh index bfd4714..da31e8f 100644 --- a/rott-registered.sh +++ b/rott-registered.sh @@ -2,6 +2,11 @@ set -e +if [ -f /usr/share/rott/DARKWAR.WAD ]; then + cd /usr/share/rott + exec rott-registered.bin "$@" +fi + if [ ! -f ~/.rott/registered/*.WAD -a ! -f ~/.rott/registered/*.wad ]; then zenity --info --text='In order to play the registered version of Rise of the Triad (ROTT), An Apogee Game, the original registered ROTT datafiles are needed. diff --git a/rott-shareware.appdata.xml b/rott-shareware.appdata.xml new file mode 100644 index 0000000..5332995 --- /dev/null +++ b/rott-shareware.appdata.xml @@ -0,0 +1,32 @@ + + + rott-shareware.desktop + CC0-1.0 + GPL-2.0+ + Rise of the Triad + Apogee's classic 3d first person shooter Rise of the Triad + +

+ This is the icculus.org Linux port of Apogee's classic 3d shooter Rise of + the Triad (RotT), which has been released under the GPL by Apogee. This + version is enhanced with the "high" resolution rendering from the winrott + port. +

+

+ This package contains the engine for the shareware version of RotT. + In order to play the shareware version, you will need the shareware + datafiles. Which can be freely downloaded from Apogee/3DRealms, but + cannot be distributed as a part of Fedora. When you start RotT for the + first time it will offer to download the datafiles for you. +

+
+ https://icculus.org/rott/ + + http://image.dosgamesarchive.com/screenshots/risetriad6.gif + http://image.dosgamesarchive.com/screenshots/risetriad1.gif + http://image.dosgamesarchive.com/screenshots/risetriad2.gif + http://image.dosgamesarchive.com/screenshots/risetriad3.gif + http://image.dosgamesarchive.com/screenshots/risetriad5.gif + + jwrdegoede_at_fedoraproject.org +
diff --git a/rott-shareware.desktop b/rott-shareware.desktop index 2dff597..ed9830c 100644 --- a/rott-shareware.desktop +++ b/rott-shareware.desktop @@ -1,10 +1,10 @@ [Desktop Entry] -Encoding=UTF-8 Name=Rise of the Triad Comment=RotT Shareware launcher, will automatically download the needed data-files Exec=rott-shareware StartupNotify=false Terminal=false Type=Application -Icon=rott.png +Icon=rott Categories=Game;ActionGame; +Keywords=game;fps;first;person;shooter;rise;triad;rott; diff --git a/rott-shareware.sh b/rott-shareware.sh index 2b8fde9..1e47aa0 100644 --- a/rott-shareware.sh +++ b/rott-shareware.sh @@ -2,6 +2,12 @@ set -e +# game assets installed with game-data-packager +if [ -f /usr/share/rott/REMOTE1.RTS ]; then + cd /usr/share/rott + exec /usr/bin/rott-shareware.bin "$@" +fi + mkdir -p $HOME/.rott cd $HOME/.rott diff --git a/rott.spec b/rott.spec index e8415f1..128cd19 100644 --- a/rott.spec +++ b/rott.spec @@ -1,26 +1,25 @@ Name: rott -Version: 1.1 -Release: 8%{?dist} +Version: 1.1.2 +Release: 28%{?dist} Summary: Rise of the Triad -Group: Amusements/Games -License: GPLv2+ +# Automatically converted from old format: GPLv2+ - review is highly recommended. +License: GPL-2.0-or-later URL: http://icculus.org/rott/ -Source0: http://icculus.org/rott/releases/rott-1.1.tar.gz +Source0: http://icculus.org/rott/releases/rott-%{version}.tar.gz Source1: rott-shareware.sh Source2: rott-registered.sh Source3: rott.autodlrc Source4: rott-shareware.desktop Source5: rott-registered.desktop +Source6: rott-shareware.appdata.xml +Source7: rott-registered.metainfo.xml # Notice this is made from an edited screenshot and thus derived from the non- -# free datafiles. I believe this constitues fair-use. If anyone disagrees let +# free datafiles. I believe this constitutes fair-use. If anyone disagrees let # me know and I'll remove it -Source6: rott.png -Patch0: rott-1.1-gameover.patch -Patch1: rott-1.1-fix-end-level-display.patch -# Note: this gets applied during build, not during prep! -Patch99: rott-1.0-registered.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires: SDL_mixer-devel desktop-file-utils +Source8: rott.png +BuildRequires: make +BuildRequires: gcc +BuildRequires: SDL_mixer-devel desktop-file-utils libappstream-glib %description This is the icculus.org Linux port of Apogee's classic 3d shooter Rise of the @@ -30,8 +29,7 @@ enhanced with the "high" resolution rendering from the winrott port. %package shareware Summary: Rise of the Triad shareware version -Group: Amusements/Games -Requires: hicolor-icon-theme autodownloader +Requires: hicolor-icon-theme autodownloader unzip %description shareware This is the icculus.org Linux port of Apogee's classic 3d shooter Rise of the @@ -47,7 +45,6 @@ the datafiles for you. %package registered Summary: Rise of the Triad registered version -Group: Amusements/Games Requires: hicolor-icon-theme zenity %description registered @@ -63,8 +60,6 @@ from this dir. %prep %setup -q -%patch0 -p1 -%patch1 -p1 cp -a doc/rott.6 rott-shareware.6 cp -a doc/rott.6 rott-registered.6 @@ -76,18 +71,17 @@ touch -r rott-registered.6.orig rott-registered.6 %build pushd rott -make %{?_smp_mflags} EXTRACFLAGS="$RPM_OPT_FLAGS -Wno-unused -Wno-pointer-sign" -mv rott rott-shareware.bin - -patch -p2 < %{PATCH99} -make clean -make %{?_smp_mflags} EXTRACFLAGS="$RPM_OPT_FLAGS -Wno-unused -Wno-pointer-sign" -mv rott rott-registered.bin +make %{?_smp_mflags} \ + EXTRACFLAGS="$RPM_OPT_FLAGS -Wno-unused -Wno-pointer-sign" \ + ROTT=rott-shareware.bin +make tidy +make %{?_smp_mflags} \ + EXTRACFLAGS="$RPM_OPT_FLAGS -Wno-unused -Wno-pointer-sign" \ + ROTT=rott-registered.bin SHAREWARE=0 SUPERROTT=1 popd %install -rm -rf $RPM_BUILD_ROOT #no make install target, DIY mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} @@ -101,81 +95,131 @@ install -p -m 644 %{name}-registered.6 $RPM_BUILD_ROOT%{_mandir}/man6 # below is the desktop file and icon stuff. mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications -desktop-file-install \ -%if 0%{?fedora} && 0%{?fedora} < 19 - --vendor fedora \ -%endif - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - %{SOURCE4} -mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications -desktop-file-install \ -%if 0%{?fedora} && 0%{?fedora} < 19 - --vendor fedora \ -%endif - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - %{SOURCE5} +desktop-file-install --dir $RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE4} +desktop-file-install --dir $RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE5} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata +install -p -m 644 %{SOURCE6} %{SOURCE7} $RPM_BUILD_ROOT%{_datadir}/appdata +appstream-util validate-relax --nonet $RPM_BUILD_ROOT%{_datadir}/appdata/*.xml mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps -install -p -m 644 %{SOURCE6} \ +install -p -m 644 %{SOURCE8} \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/ - -%clean -rm -rf $RPM_BUILD_ROOT - - -%post shareware -touch --no-create %{_datadir}/icons/hicolor || : -if [ -x %{_bindir}/gtk-update-icon-cache ]; then - %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : -fi - -%postun shareware -touch --no-create %{_datadir}/icons/hicolor || : -if [ -x %{_bindir}/gtk-update-icon-cache ]; then - %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : -fi - -%post registered -touch --no-create %{_datadir}/icons/hicolor || : -if [ -x %{_bindir}/gtk-update-icon-cache ]; then - %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : -fi - -%postun registered -touch --no-create %{_datadir}/icons/hicolor || : -if [ -x %{_bindir}/gtk-update-icon-cache ]; then - %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : -fi - - %files shareware -%defattr(-,root,root,-) -%doc README COPYING doc/*.txt +%doc README doc/*.txt +%license COPYING %{_bindir}/rott-shareware* %{_mandir}/man6/%{name}-shareware.6* %{_datadir}/%{name} -%if 0%{?fedora} && 0%{?fedora} < 19 -%{_datadir}/applications/fedora-%{name}-shareware.desktop -%else +%{_datadir}/appdata/%{name}-shareware.appdata.xml %{_datadir}/applications/%{name}-shareware.desktop -%endif %{_datadir}/icons/hicolor/64x64/apps/%{name}.png %files registered -%defattr(-,root,root,-) -%doc README COPYING doc/*.txt +%doc README doc/*.txt +%license COPYING %{_bindir}/rott-registered* %{_mandir}/man6/%{name}-registered.6* -%if 0%{?fedora} && 0%{?fedora} < 19 -%{_datadir}/applications/fedora-%{name}-registered.desktop -%else +%{_datadir}/appdata/%{name}-registered.metainfo.xml %{_datadir}/applications/%{name}-registered.desktop -%endif %{_datadir}/icons/hicolor/64x64/apps/%{name}.png %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 1.1.2-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sat Jan 18 2025 Fedora Release Engineering - 1.1.2-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Fri Jul 26 2024 Miroslav Suchý - 1.1.2-26 +- convert license to SPDX + +* Fri Jul 19 2024 Fedora Release Engineering - 1.1.2-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jan 26 2024 Fedora Release Engineering - 1.1.2-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 22 2024 Fedora Release Engineering - 1.1.2-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jul 21 2023 Fedora Release Engineering - 1.1.2-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jan 20 2023 Fedora Release Engineering - 1.1.2-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Jul 23 2022 Fedora Release Engineering - 1.1.2-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Jan 21 2022 Fedora Release Engineering - 1.1.2-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 1.1.2-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 1.1.2-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 01 2020 Fedora Release Engineering - 1.1.2-16 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 1.1.2-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jan 30 2020 Fedora Release Engineering - 1.1.2-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jul 26 2019 Fedora Release Engineering - 1.1.2-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Feb 02 2019 Fedora Release Engineering - 1.1.2-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 1.1.2-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 1.1.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Jan 18 2018 Igor Gnatenko - 1.1.2-9 +- Remove obsolete scriptlets + +* Thu Aug 03 2017 Fedora Release Engineering - 1.1.2-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1.1.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1.1.2-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 1.1.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Sat Jan 16 2016 Hans de Goede - 1.1.2-4 +- Add support for game-data-packager provided assets (rhbz#1295511) +- Add appdata files +- Modernize spec a bit + +* Thu Jun 18 2015 Fedora Release Engineering - 1.1.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Aug 18 2014 Fedora Release Engineering - 1.1.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sun Jun 15 2014 Hans de Goede - 1.1.2-1 +- New upstream release 1.1.2 +- Fix FTBFS (rhbz#1037308) + +* Sun Jun 08 2014 Fedora Release Engineering - 1.1-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 1.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Mon Feb 25 2013 Toshio Kuratomi - 1.1-8 - Remove --vendor from desktop files for F19+ https://fedorahosted.org/fesco/ticket/1077 diff --git a/sources b/sources index a10efa0..c3d62a9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3e4940c364ecfae86375b7b1a77860d9 rott-1.1.tar.gz +d523c7c6c97f95ba84b8cf4deae7db38 rott-1.1.2.tar.gz